Files
e-tib.com/.next/dev/server/vendor-chunks/@sentry+node@10.47.0.js
Marc Mintel d14122005d Initial commit: E-TIB production hardening & E2E foundation
Former-commit-id: ef04fca3d76375630c05aac117bf586953f3b657
2026-04-28 19:11:38 +02:00

1194 lines
1.3 MiB

/*
* ATTENTION: An "eval-source-map" devtool has been used.
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
exports.id = "vendor-chunks/@sentry+node@10.47.0";
exports.ids = ["vendor-chunks/@sentry+node@10.47.0"];
exports.modules = {
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\n/**\n * This serves as a build time flag that will be true by default, but false in non-debug builds or if users replace `__SENTRY_DEBUG__` in their generated code.\n *\n * ATTENTION: This constant must never cross package boundaries (i.e. be exported) to guarantee that it can be used for tree shaking.\n */\nconst DEBUG_BUILD = (typeof __SENTRY_DEBUG__ === 'undefined' || __SENTRY_DEBUG__);\n\nexports.DEBUG_BUILD = DEBUG_BUILD;\n//# sourceMappingURL=debug-build.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvZGVidWctYnVpbGQuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLG1CQUFtQjtBQUNuQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9kZWJ1Zy1idWlsZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuLyoqXG4gKiBUaGlzIHNlcnZlcyBhcyBhIGJ1aWxkIHRpbWUgZmxhZyB0aGF0IHdpbGwgYmUgdHJ1ZSBieSBkZWZhdWx0LCBidXQgZmFsc2UgaW4gbm9uLWRlYnVnIGJ1aWxkcyBvciBpZiB1c2VycyByZXBsYWNlIGBfX1NFTlRSWV9ERUJVR19fYCBpbiB0aGVpciBnZW5lcmF0ZWQgY29kZS5cbiAqXG4gKiBBVFRFTlRJT046IFRoaXMgY29uc3RhbnQgbXVzdCBuZXZlciBjcm9zcyBwYWNrYWdlIGJvdW5kYXJpZXMgKGkuZS4gYmUgZXhwb3J0ZWQpIHRvIGd1YXJhbnRlZSB0aGF0IGl0IGNhbiBiZSB1c2VkIGZvciB0cmVlIHNoYWtpbmcuXG4gKi9cbmNvbnN0IERFQlVHX0JVSUxEID0gKHR5cGVvZiBfX1NFTlRSWV9ERUJVR19fID09PSAndW5kZWZpbmVkJyB8fCBfX1NFTlRSWV9ERUJVR19fKTtcblxuZXhwb3J0cy5ERUJVR19CVUlMRCA9IERFQlVHX0JVSUxEO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGVidWctYnVpbGQuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/index.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/index.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst http = __webpack_require__(/*! ./integrations/http.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\");\nconst nodeFetch = __webpack_require__(/*! ./integrations/node-fetch.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js\");\nconst fs = __webpack_require__(/*! ./integrations/fs.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js\");\nconst express = __webpack_require__(/*! ./integrations/tracing/express.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js\");\nconst index$1 = __webpack_require__(/*! ./integrations/tracing/fastify/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js\");\nconst graphql = __webpack_require__(/*! ./integrations/tracing/graphql.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js\");\nconst kafka = __webpack_require__(/*! ./integrations/tracing/kafka.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js\");\nconst lrumemoizer = __webpack_require__(/*! ./integrations/tracing/lrumemoizer.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js\");\nconst mongo = __webpack_require__(/*! ./integrations/tracing/mongo.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js\");\nconst mongoose = __webpack_require__(/*! ./integrations/tracing/mongoose.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js\");\nconst mysql = __webpack_require__(/*! ./integrations/tracing/mysql.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js\");\nconst mysql2 = __webpack_require__(/*! ./integrations/tracing/mysql2.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js\");\nconst redis = __webpack_require__(/*! ./integrations/tracing/redis.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js\");\nconst postgres = __webpack_require__(/*! ./integrations/tracing/postgres.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js\");\nconst postgresjs = __webpack_require__(/*! ./integrations/tracing/postgresjs.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js\");\nconst prisma = __webpack_require__(/*! ./integrations/tracing/prisma.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js\");\nconst index$5 = __webpack_require__(/*! ./integrations/tracing/hapi/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js\");\nconst index$6 = __webpack_require__(/*! ./integrations/tracing/hono/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js\");\nconst koa = __webpack_require__(/*! ./integrations/tracing/koa.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js\");\nconst connect = __webpack_require__(/*! ./integrations/tracing/connect.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js\");\nconst knex = __webpack_require__(/*! ./integrations/tracing/knex.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js\");\nconst tedious = __webpack_require__(/*! ./integrations/tracing/tedious.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js\");\nconst genericPool = __webpack_require__(/*! ./integrations/tracing/genericPool.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js\");\nconst dataloader = __webpack_require__(/*! ./integrations/tracing/dataloader.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js\");\nconst amqplib = __webpack_require__(/*! ./integrations/tracing/amqplib.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js\");\nconst index$a = __webpack_require__(/*! ./integrations/tracing/vercelai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js\");\nconst index$9 = __webpack_require__(/*! ./integrations/tracing/openai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js\");\nconst index = __webpack_require__(/*! ./integrations/tracing/anthropic-ai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js\");\nconst index$4 = __webpack_require__(/*! ./integrations/tracing/google-genai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js\");\nconst index$7 = __webpack_require__(/*! ./integrations/tracing/langchain/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js\");\nconst index$8 = __webpack_require__(/*! ./integrations/tracing/langgraph/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js\");\nconst launchDarkly = __webpack_require__(/*! ./integrations/featureFlagShims/launchDarkly.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js\");\nconst openFeature = __webpack_require__(/*! ./integrations/featureFlagShims/openFeature.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js\");\nconst statsig = __webpack_require__(/*! ./integrations/featureFlagShims/statsig.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js\");\nconst unleash = __webpack_require__(/*! ./integrations/featureFlagShims/unleash.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js\");\nconst growthbook = __webpack_require__(/*! ./integrations/featureFlagShims/growthbook.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js\");\nconst firebase = __webpack_require__(/*! ./integrations/tracing/firebase/firebase.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js\");\nconst index$3 = __webpack_require__(/*! ./sdk/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js\");\nconst initOtel = __webpack_require__(/*! ./sdk/initOtel.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js\");\nconst index$2 = __webpack_require__(/*! ./integrations/tracing/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\");\nconst opentelemetry = __webpack_require__(/*! @sentry/opentelemetry */ \"(rsc)/./node_modules/.pnpm/@sentry+opentelemetry@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hoo_70f539428297572a9e3752da9c315982/node_modules/@sentry/opentelemetry/build/cjs/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\n\n\nexports.httpIntegration = http.httpIntegration;\nexports.nativeNodeFetchIntegration = nodeFetch.nativeNodeFetchIntegration;\nexports.fsIntegration = fs.fsIntegration;\nexports.expressErrorHandler = express.expressErrorHandler;\nexports.expressIntegration = express.expressIntegration;\nexports.setupExpressErrorHandler = express.setupExpressErrorHandler;\nexports.fastifyIntegration = index$1.fastifyIntegration;\nexports.setupFastifyErrorHandler = index$1.setupFastifyErrorHandler;\nexports.graphqlIntegration = graphql.graphqlIntegration;\nexports.kafkaIntegration = kafka.kafkaIntegration;\nexports.lruMemoizerIntegration = lrumemoizer.lruMemoizerIntegration;\nexports.mongoIntegration = mongo.mongoIntegration;\nexports.mongooseIntegration = mongoose.mongooseIntegration;\nexports.mysqlIntegration = mysql.mysqlIntegration;\nexports.mysql2Integration = mysql2.mysql2Integration;\nexports.redisIntegration = redis.redisIntegration;\nexports.postgresIntegration = postgres.postgresIntegration;\nexports.postgresJsIntegration = postgresjs.postgresJsIntegration;\nexports.prismaIntegration = prisma.prismaIntegration;\nexports.hapiIntegration = index$5.hapiIntegration;\nexports.setupHapiErrorHandler = index$5.setupHapiErrorHandler;\nexports.honoIntegration = index$6.honoIntegration;\nexports.setupHonoErrorHandler = index$6.setupHonoErrorHandler;\nexports.koaIntegration = koa.koaIntegration;\nexports.setupKoaErrorHandler = koa.setupKoaErrorHandler;\nexports.connectIntegration = connect.connectIntegration;\nexports.setupConnectErrorHandler = connect.setupConnectErrorHandler;\nexports.knexIntegration = knex.knexIntegration;\nexports.tediousIntegration = tedious.tediousIntegration;\nexports.genericPoolIntegration = genericPool.genericPoolIntegration;\nexports.dataloaderIntegration = dataloader.dataloaderIntegration;\nexports.amqplibIntegration = amqplib.amqplibIntegration;\nexports.vercelAIIntegration = index$a.vercelAIIntegration;\nexports.openAIIntegration = index$9.openAIIntegration;\nexports.anthropicAIIntegration = index.anthropicAIIntegration;\nexports.googleGenAIIntegration = index$4.googleGenAIIntegration;\nexports.langChainIntegration = index$7.langChainIntegration;\nexports.langGraphIntegration = index$8.langGraphIntegration;\nexports.buildLaunchDarklyFlagUsedHandler = launchDarkly.buildLaunchDarklyFlagUsedHandlerShim;\nexports.launchDarklyIntegration = launchDarkly.launchDarklyIntegrationShim;\nexports.OpenFeatureIntegrationHook = openFeature.OpenFeatureIntegrationHookShim;\nexports.openFeatureIntegration = openFeature.openFeatureIntegrationShim;\nexports.statsigIntegration = statsig.statsigIntegrationShim;\nexports.unleashIntegration = unleash.unleashIntegrationShim;\nexports.growthbookIntegration = growthbook.growthbookIntegrationShim;\nexports.firebaseIntegration = firebase.firebaseIntegration;\nexports.getDefaultIntegrations = index$3.getDefaultIntegrations;\nexports.getDefaultIntegrationsWithoutPerformance = index$3.getDefaultIntegrationsWithoutPerformance;\nexports.init = index$3.init;\nexports.initWithoutDefaultIntegrations = index$3.initWithoutDefaultIntegrations;\nexports.initOpenTelemetry = initOtel.initOpenTelemetry;\nexports.preloadOpenTelemetry = initOtel.preloadOpenTelemetry;\nexports.getAutoPerformanceIntegrations = index$2.getAutoPerformanceIntegrations;\nexports.setNodeAsyncContextStrategy = opentelemetry.setOpenTelemetryContextAsyncContextStrategy;\nexports.SDK_VERSION = core.SDK_VERSION;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_OP = core.SEMANTIC_ATTRIBUTE_SENTRY_OP;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN = core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE = core.SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE = core.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE;\nexports.Scope = core.Scope;\nexports.addBreadcrumb = core.addBreadcrumb;\nexports.addEventProcessor = core.addEventProcessor;\nexports.addIntegration = core.addIntegration;\nexports.captureCheckIn = core.captureCheckIn;\nexports.captureConsoleIntegration = core.captureConsoleIntegration;\nexports.captureEvent = core.captureEvent;\nexports.captureException = core.captureException;\nexports.captureFeedback = core.captureFeedback;\nexports.captureMessage = core.captureMessage;\nexports.captureSession = core.captureSession;\nexports.close = core.close;\nexports.consoleIntegration = core.consoleIntegration;\nexports.consoleLoggingIntegration = core.consoleLoggingIntegration;\nexports.continueTrace = core.continueTrace;\nexports.createConsolaReporter = core.createConsolaReporter;\nexports.createLangChainCallbackHandler = core.createLangChainCallbackHandler;\nexports.createTransport = core.createTransport;\nexports.dedupeIntegration = core.dedupeIntegration;\nexports.endSession = core.endSession;\nexports.eventFiltersIntegration = core.eventFiltersIntegration;\nexports.extraErrorDataIntegration = core.extraErrorDataIntegration;\nexports.featureFlagsIntegration = core.featureFlagsIntegration;\nexports.flush = core.flush;\nexports.functionToStringIntegration = core.functionToStringIntegration;\nexports.getActiveSpan = core.getActiveSpan;\nexports.getClient = core.getClient;\nexports.getCurrentScope = core.getCurrentScope;\nexports.getGlobalScope = core.getGlobalScope;\nexports.getIsolationScope = core.getIsolationScope;\nexports.getRootSpan = core.getRootSpan;\nexports.getSpanDescendants = core.getSpanDescendants;\nexports.getSpanStatusFromHttpCode = core.getSpanStatusFromHttpCode;\nexports.getTraceData = core.getTraceData;\nexports.getTraceMetaTags = core.getTraceMetaTags;\nexports.httpHeadersToSpanAttributes = core.httpHeadersToSpanAttributes;\nexports.inboundFiltersIntegration = core.inboundFiltersIntegration;\nexports.instrumentAnthropicAiClient = core.instrumentAnthropicAiClient;\nexports.instrumentGoogleGenAIClient = core.instrumentGoogleGenAIClient;\nexports.instrumentLangGraph = core.instrumentLangGraph;\nexports.instrumentOpenAiClient = core.instrumentOpenAiClient;\nexports.instrumentStateGraphCompile = core.instrumentStateGraphCompile;\nexports.instrumentSupabaseClient = core.instrumentSupabaseClient;\nexports.isEnabled = core.isEnabled;\nexports.isInitialized = core.isInitialized;\nexports.lastEventId = core.lastEventId;\nexports.linkedErrorsIntegration = core.linkedErrorsIntegration;\nexports.parameterize = core.parameterize;\nexports.profiler = core.profiler;\nexports.requestDataIntegration = core.requestDataIntegration;\nexports.rewriteFramesIntegration = core.rewriteFramesIntegration;\nexports.setContext = core.setContext;\nexports.setConversationId = core.setConversationId;\nexports.setCurrentClient = core.setCurrentClient;\nexports.setExtra = core.setExtra;\nexports.setExtras = core.setExtras;\nexports.setHttpStatus = core.setHttpStatus;\nexports.setMeasurement = core.setMeasurement;\nexports.setTag = core.setTag;\nexports.setTags = core.setTags;\nexports.setUser = core.setUser;\nexports.spanToBaggageHeader = core.spanToBaggageHeader;\nexports.spanToJSON = core.spanToJSON;\nexports.spanToTraceHeader = core.spanToTraceHeader;\nexports.startInactiveSpan = core.startInactiveSpan;\nexports.startNewTrace = core.startNewTrace;\nexports.startSession = core.startSession;\nexports.startSpan = core.startSpan;\nexports.startSpanManual = core.startSpanManual;\nexports.supabaseIntegration = core.supabaseIntegration;\nexports.suppressTracing = core.suppressTracing;\nexports.trpcMiddleware = core.trpcMiddleware;\nexports.updateSpanName = core.updateSpanName;\nexports.winterCGHeadersToDict = core.winterCGHeadersToDict;\nexports.withActiveSpan = core.withActiveSpan;\nexports.withIsolationScope = core.withIsolationScope;\nexports.withMonitor = core.withMonitor;\nexports.withScope = core.withScope;\nexports.wrapMcpServerWithSentry = core.wrapMcpServerWithSentry;\nexports.zodErrorsIntegration = core.zodErrorsIntegration;\nexports.NODE_VERSION = nodeCore.NODE_VERSION;\nexports.NodeClient = nodeCore.NodeClient;\nexports.SentryContextManager = nodeCore.SentryContextManager;\nexports.anrIntegration = nodeCore.anrIntegration;\nexports.childProcessIntegration = nodeCore.childProcessIntegration;\nexports.contextLinesIntegration = nodeCore.contextLinesIntegration;\nexports.createGetModuleFromFilename = nodeCore.createGetModuleFromFilename;\nexports.createSentryWinstonTransport = nodeCore.createSentryWinstonTransport;\nexports.cron = nodeCore.cron;\nexports.defaultStackParser = nodeCore.defaultStackParser;\nexports.disableAnrDetectionForCallback = nodeCore.disableAnrDetectionForCallback;\nexports.generateInstrumentOnce = nodeCore.generateInstrumentOnce;\nexports.getSentryRelease = nodeCore.getSentryRelease;\nexports.httpServerIntegration = nodeCore.httpServerIntegration;\nexports.httpServerSpansIntegration = nodeCore.httpServerSpansIntegration;\nexports.localVariablesIntegration = nodeCore.localVariablesIntegration;\nexports.logger = nodeCore.logger;\nexports.makeNodeTransport = nodeCore.makeNodeTransport;\nexports.metrics = nodeCore.metrics;\nexports.modulesIntegration = nodeCore.modulesIntegration;\nexports.nodeContextIntegration = nodeCore.nodeContextIntegration;\nexports.nodeRuntimeMetricsIntegration = nodeCore.nodeRuntimeMetricsIntegration;\nexports.onUncaughtExceptionIntegration = nodeCore.onUncaughtExceptionIntegration;\nexports.onUnhandledRejectionIntegration = nodeCore.onUnhandledRejectionIntegration;\nexports.pinoIntegration = nodeCore.pinoIntegration;\nexports.processSessionIntegration = nodeCore.processSessionIntegration;\nexports.spotlightIntegration = nodeCore.spotlightIntegration;\nexports.systemErrorIntegration = nodeCore.systemErrorIntegration;\nexports.validateOpenTelemetrySetup = nodeCore.validateOpenTelemetrySetup;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW5kZXguanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLHdJQUF3QjtBQUM3QyxrQkFBa0IsbUJBQU8sQ0FBQyxvSkFBOEI7QUFDeEQsV0FBVyxtQkFBTyxDQUFDLG9JQUFzQjtBQUN6QyxnQkFBZ0IsbUJBQU8sQ0FBQyw4SkFBbUM7QUFDM0QsZ0JBQWdCLG1CQUFPLENBQUMsMEtBQXlDO0FBQ2pFLGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxjQUFjLG1CQUFPLENBQUMsMEpBQWlDO0FBQ3ZELG9CQUFvQixtQkFBTyxDQUFDLHNLQUF1QztBQUNuRSxjQUFjLG1CQUFPLENBQUMsMEpBQWlDO0FBQ3ZELGlCQUFpQixtQkFBTyxDQUFDLGdLQUFvQztBQUM3RCxjQUFjLG1CQUFPLENBQUMsMEpBQWlDO0FBQ3ZELGVBQWUsbUJBQU8sQ0FBQyw0SkFBa0M7QUFDekQsY0FBYyxtQkFBTyxDQUFDLDBKQUFpQztBQUN2RCxpQkFBaUIsbUJBQU8sQ0FBQyxnS0FBb0M7QUFDN0QsbUJBQW1CLG1CQUFPLENBQUMsb0tBQXNDO0FBQ2pFLGVBQWUsbUJBQU8sQ0FBQyw0SkFBa0M7QUFDekQsZ0JBQWdCLG1CQUFPLENBQUMsb0tBQXNDO0FBQzlELGdCQUFnQixtQkFBTyxDQUFDLG9LQUFzQztBQUM5RCxZQUFZLG1CQUFPLENBQUMsc0pBQStCO0FBQ25ELGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxhQUFhLG1CQUFPLENBQUMsd0pBQWdDO0FBQ3JELGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxvQkFBb0IsbUJBQU8sQ0FBQyxzS0FBdUM7QUFDbkUsbUJBQW1CLG1CQUFPLENBQUMsb0tBQXNDO0FBQ2pFLGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxnQkFBZ0IsbUJBQU8sQ0FBQyw0S0FBMEM7QUFDbEUsZ0JBQWdCLG1CQUFPLENBQUMsd0tBQXdDO0FBQ2hFLGNBQWMsbUJBQU8sQ0FBQyxvTEFBOEM7QUFDcEUsZ0JBQWdCLG1CQUFPLENBQUMsb0xBQThDO0FBQ3RFLGdCQUFnQixtQkFBTyxDQUFDLDhLQUEyQztBQUNuRSxnQkFBZ0IsbUJBQU8sQ0FBQyw4S0FBMkM7QUFDbkUscUJBQXFCLG1CQUFPLENBQUMsMExBQWlEO0FBQzlFLG9CQUFvQixtQkFBTyxDQUFDLHdMQUFnRDtBQUM1RSxnQkFBZ0IsbUJBQU8sQ0FBQyxnTEFBNEM7QUFDcEUsZ0JBQWdCLG1CQUFPLENBQUMsZ0xBQTRDO0FBQ3BFLG1CQUFtQixtQkFBTyxDQUFDLHNMQUErQztBQUMxRSxpQkFBaUIsbUJBQU8sQ0FBQyxrTEFBNkM7QUFDdEUsZ0JBQWdCLG1CQUFPLENBQUMsd0hBQWdCO0FBQ3hDLGlCQUFpQixtQkFBTyxDQUFDLDhIQUFtQjtBQUM1QyxnQkFBZ0IsbUJBQU8sQ0FBQywwSkFBaUM7QUFDekQsc0JBQXNCLG1CQUFPLENBQUMsd09BQXVCO0FBQ3JELGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7Ozs7QUFJNUMsdUJBQXVCO0FBQ3ZCLGtDQUFrQztBQUNsQyxxQkFBcUI7QUFDckIsMkJBQTJCO0FBQzNCLDBCQUEwQjtBQUMxQixnQ0FBZ0M7QUFDaEMsMEJBQTBCO0FBQzFCLGdDQUFnQztBQUNoQywwQkFBMEI7QUFDMUIsd0JBQXdCO0FBQ3hCLDhCQUE4QjtBQUM5Qix3QkFBd0I7QUFDeEIsMkJBQTJCO0FBQzNCLHdCQUF3QjtBQUN4Qix5QkFBeUI7QUFDekIsd0JBQXdCO0FBQ3hCLDJCQUEyQjtBQUMzQiw2QkFBNkI7QUFDN0IseUJBQXlCO0FBQ3pCLHVCQUF1QjtBQUN2Qiw2QkFBNkI7QUFDN0IsdUJBQXVCO0FBQ3ZCLDZCQUE2QjtBQUM3QixzQkFBc0I7QUFDdEIsNEJBQTRCO0FBQzVCLDBCQUEwQjtBQUMxQixnQ0FBZ0M7QUFDaEMsdUJBQXVCO0FBQ3ZCLDBCQUEwQjtBQUMxQiw4QkFBOEI7QUFDOUIsNkJBQTZCO0FBQzdCLDBCQUEwQjtBQUMxQiwyQkFBMkI7QUFDM0IseUJBQXlCO0FBQ3pCLDhCQUE4QjtBQUM5Qiw4QkFBOEI7QUFDOUIsNEJBQTRCO0FBQzVCLDRCQUE0QjtBQUM1Qix3Q0FBd0M7QUFDeEMsK0JBQStCO0FBQy9CLGtDQUFrQztBQUNsQyw4QkFBOEI7QUFDOUIsMEJBQTBCO0FBQzFCLDBCQUEwQjtBQUMxQiw2QkFBNkI7QUFDN0IsMkJBQTJCO0FBQzNCLDhCQUE4QjtBQUM5QixnREFBZ0Q7QUFDaEQsWUFBWTtBQUNaLHNDQUFzQztBQUN0Qyx5QkFBeUI7QUFDekIsNEJBQTRCO0FBQzVCLHNDQUFzQztBQUN0QyxtQ0FBbUM7QUFDbkMsbUJBQW1CO0FBQ25CLG9DQUFvQztBQUNwQyx3Q0FBd0M7QUFDeEMsNkNBQTZDO0FBQzdDLHdDQUF3QztBQUN4QyxhQUFhO0FBQ2IscUJBQXFCO0FBQ3JCLHlCQUF5QjtBQUN6QixzQkFBc0I7QUFDdEIsc0JBQXNCO0FBQ3RCLGlDQUFpQztBQUNqQyxvQkFBb0I7QUFDcEIsd0JBQXdCO0FBQ3hCLHVCQUF1QjtBQUN2QixzQkFBc0I7QUFDdEIsc0JBQXNCO0FBQ3RCLGFBQWE7QUFDYiwwQkFBMEI7QUFDMUIsaUNBQWlDO0FBQ2pDLHFCQUFxQjtBQUNyQiw2QkFBNkI7QUFDN0Isc0NBQXNDO0FBQ3RDLHVCQUF1QjtBQUN2Qix5QkFBeUI7QUFDekIsa0JBQWtCO0FBQ2xCLCtCQUErQjtBQUMvQixpQ0FBaUM7QUFDakMsK0JBQStCO0FBQy9CLGFBQWE7QUFDYixtQ0FBbUM7QUFDbkMscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQix1QkFBdUI7QUFDdkIsc0JBQXNCO0FBQ3RCLHlCQUF5QjtBQUN6QixtQkFBbUI7QUFDbkIsMEJBQTBCO0FBQzFCLGlDQUFpQztBQUNqQyxvQkFBb0I7QUFDcEIsd0JBQXdCO0FBQ3hCLG1DQUFtQztBQUNuQyxpQ0FBaUM7QUFDakMsbUNBQW1DO0FBQ25DLG1DQUFtQztBQUNuQywyQkFBMkI7QUFDM0IsOEJBQThCO0FBQzlCLG1DQUFtQztBQUNuQyxnQ0FBZ0M7QUFDaEMsaUJBQWlCO0FBQ2pCLHFCQUFxQjtBQUNyQixtQkFBbUI7QUFDbkIsK0JBQStCO0FBQy9CLG9CQUFvQjtBQUNwQixnQkFBZ0I7QUFDaEIsOEJBQThCO0FBQzlCLGdDQUFnQztBQUNoQyxrQkFBa0I7QUFDbEIseUJBQXlCO0FBQ3pCLHdCQUF3QjtBQUN4QixnQkFBZ0I7QUFDaEIsaUJBQWlCO0FBQ2pCLHFCQUFxQjtBQUNyQixzQkFBc0I7QUFDdEIsY0FBYztBQUNkLGVBQWU7QUFDZixlQUFlO0FBQ2YsMkJBQTJCO0FBQzNCLGtCQUFrQjtBQUNsQix5QkFBeUI7QUFDekIseUJBQXlCO0FBQ3pCLHFCQUFxQjtBQUNyQixvQkFBb0I7QUFDcEIsaUJBQWlCO0FBQ2pCLHVCQUF1QjtBQUN2QiwyQkFBMkI7QUFDM0IsdUJBQXVCO0FBQ3ZCLHNCQUFzQjtBQUN0QixzQkFBc0I7QUFDdEIsNkJBQTZCO0FBQzdCLHNCQUFzQjtBQUN0QiwwQkFBMEI7QUFDMUIsbUJBQW1CO0FBQ25CLGlCQUFpQjtBQUNqQiwrQkFBK0I7QUFDL0IsNEJBQTRCO0FBQzVCLG9CQUFvQjtBQUNwQixrQkFBa0I7QUFDbEIsNEJBQTRCO0FBQzVCLHNCQUFzQjtBQUN0QiwrQkFBK0I7QUFDL0IsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyxvQ0FBb0M7QUFDcEMsWUFBWTtBQUNaLDBCQUEwQjtBQUMxQixzQ0FBc0M7QUFDdEMsOEJBQThCO0FBQzlCLHdCQUF3QjtBQUN4Qiw2QkFBNkI7QUFDN0Isa0NBQWtDO0FBQ2xDLGlDQUFpQztBQUNqQyxjQUFjO0FBQ2QseUJBQXlCO0FBQ3pCLGVBQWU7QUFDZiwwQkFBMEI7QUFDMUIsOEJBQThCO0FBQzlCLHFDQUFxQztBQUNyQyxzQ0FBc0M7QUFDdEMsdUNBQXVDO0FBQ3ZDLHVCQUF1QjtBQUN2QixpQ0FBaUM7QUFDakMsNEJBQTRCO0FBQzVCLDhCQUE4QjtBQUM5QixrQ0FBa0M7QUFDbEMiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGh0dHAgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy9odHRwLmpzJyk7XG5jb25zdCBub2RlRmV0Y2ggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy9ub2RlLWZldGNoLmpzJyk7XG5jb25zdCBmcyA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZzLmpzJyk7XG5jb25zdCBleHByZXNzID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9leHByZXNzLmpzJyk7XG5jb25zdCBpbmRleCQxID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9mYXN0aWZ5L2luZGV4LmpzJyk7XG5jb25zdCBncmFwaHFsID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9ncmFwaHFsLmpzJyk7XG5jb25zdCBrYWZrYSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcva2Fma2EuanMnKTtcbmNvbnN0IGxydW1lbW9pemVyID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9scnVtZW1vaXplci5qcycpO1xuY29uc3QgbW9uZ28gPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL21vbmdvLmpzJyk7XG5jb25zdCBtb25nb29zZSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ29vc2UuanMnKTtcbmNvbnN0IG15c3FsID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9teXNxbC5qcycpO1xuY29uc3QgbXlzcWwyID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9teXNxbDIuanMnKTtcbmNvbnN0IHJlZGlzID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9yZWRpcy5qcycpO1xuY29uc3QgcG9zdGdyZXMgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL3Bvc3RncmVzLmpzJyk7XG5jb25zdCBwb3N0Z3Jlc2pzID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9wb3N0Z3Jlc2pzLmpzJyk7XG5jb25zdCBwcmlzbWEgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL3ByaXNtYS5qcycpO1xuY29uc3QgaW5kZXgkNSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvaGFwaS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXgkNiA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbmRleC5qcycpO1xuY29uc3Qga29hID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9rb2EuanMnKTtcbmNvbnN0IGNvbm5lY3QgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2Nvbm5lY3QuanMnKTtcbmNvbnN0IGtuZXggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2tuZXguanMnKTtcbmNvbnN0IHRlZGlvdXMgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL3RlZGlvdXMuanMnKTtcbmNvbnN0IGdlbmVyaWNQb29sID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9nZW5lcmljUG9vbC5qcycpO1xuY29uc3QgZGF0YWxvYWRlciA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvZGF0YWxvYWRlci5qcycpO1xuY29uc3QgYW1xcGxpYiA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvYW1xcGxpYi5qcycpO1xuY29uc3QgaW5kZXgkYSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvaW5kZXguanMnKTtcbmNvbnN0IGluZGV4JDkgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL29wZW5haS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2FudGhyb3BpYy1haS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXgkNCA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luZGV4LmpzJyk7XG5jb25zdCBpbmRleCQ3ID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9sYW5nY2hhaW4vaW5kZXguanMnKTtcbmNvbnN0IGluZGV4JDggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2xhbmdncmFwaC9pbmRleC5qcycpO1xuY29uc3QgbGF1bmNoRGFya2x5ID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9sYXVuY2hEYXJrbHkuanMnKTtcbmNvbnN0IG9wZW5GZWF0dXJlID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9vcGVuRmVhdHVyZS5qcycpO1xuY29uc3Qgc3RhdHNpZyA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvc3RhdHNpZy5qcycpO1xuY29uc3QgdW5sZWFzaCA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvdW5sZWFzaC5qcycpO1xuY29uc3QgZ3Jvd3RoYm9vayA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvZ3Jvd3RoYm9vay5qcycpO1xuY29uc3QgZmlyZWJhc2UgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2ZpcmViYXNlL2ZpcmViYXNlLmpzJyk7XG5jb25zdCBpbmRleCQzID0gcmVxdWlyZSgnLi9zZGsvaW5kZXguanMnKTtcbmNvbnN0IGluaXRPdGVsID0gcmVxdWlyZSgnLi9zZGsvaW5pdE90ZWwuanMnKTtcbmNvbnN0IGluZGV4JDIgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2luZGV4LmpzJyk7XG5jb25zdCBvcGVudGVsZW1ldHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9vcGVudGVsZW1ldHJ5Jyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cblxuXG5leHBvcnRzLmh0dHBJbnRlZ3JhdGlvbiA9IGh0dHAuaHR0cEludGVncmF0aW9uO1xuZXhwb3J0cy5uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbiA9IG5vZGVGZXRjaC5uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZnNJbnRlZ3JhdGlvbiA9IGZzLmZzSW50ZWdyYXRpb247XG5leHBvcnRzLmV4cHJlc3NFcnJvckhhbmRsZXIgPSBleHByZXNzLmV4cHJlc3NFcnJvckhhbmRsZXI7XG5leHBvcnRzLmV4cHJlc3NJbnRlZ3JhdGlvbiA9IGV4cHJlc3MuZXhwcmVzc0ludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cEV4cHJlc3NFcnJvckhhbmRsZXIgPSBleHByZXNzLnNldHVwRXhwcmVzc0Vycm9ySGFuZGxlcjtcbmV4cG9ydHMuZmFzdGlmeUludGVncmF0aW9uID0gaW5kZXgkMS5mYXN0aWZ5SW50ZWdyYXRpb247XG5leHBvcnRzLnNldHVwRmFzdGlmeUVycm9ySGFuZGxlciA9IGluZGV4JDEuc2V0dXBGYXN0aWZ5RXJyb3JIYW5kbGVyO1xuZXhwb3J0cy5ncmFwaHFsSW50ZWdyYXRpb24gPSBncmFwaHFsLmdyYXBocWxJbnRlZ3JhdGlvbjtcbmV4cG9ydHMua2Fma2FJbnRlZ3JhdGlvbiA9IGthZmthLmthZmthSW50ZWdyYXRpb247XG5leHBvcnRzLmxydU1lbW9pemVySW50ZWdyYXRpb24gPSBscnVtZW1vaXplci5scnVNZW1vaXplckludGVncmF0aW9uO1xuZXhwb3J0cy5tb25nb0ludGVncmF0aW9uID0gbW9uZ28ubW9uZ29JbnRlZ3JhdGlvbjtcbmV4cG9ydHMubW9uZ29vc2VJbnRlZ3JhdGlvbiA9IG1vbmdvb3NlLm1vbmdvb3NlSW50ZWdyYXRpb247XG5leHBvcnRzLm15c3FsSW50ZWdyYXRpb24gPSBteXNxbC5teXNxbEludGVncmF0aW9uO1xuZXhwb3J0cy5teXNxbDJJbnRlZ3JhdGlvbiA9IG15c3FsMi5teXNxbDJJbnRlZ3JhdGlvbjtcbmV4cG9ydHMucmVkaXNJbnRlZ3JhdGlvbiA9IHJlZGlzLnJlZGlzSW50ZWdyYXRpb247XG5leHBvcnRzLnBvc3RncmVzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlcy5wb3N0Z3Jlc0ludGVncmF0aW9uO1xuZXhwb3J0cy5wb3N0Z3Jlc0pzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlc2pzLnBvc3RncmVzSnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMucHJpc21hSW50ZWdyYXRpb24gPSBwcmlzbWEucHJpc21hSW50ZWdyYXRpb247XG5leHBvcnRzLmhhcGlJbnRlZ3JhdGlvbiA9IGluZGV4JDUuaGFwaUludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cEhhcGlFcnJvckhhbmRsZXIgPSBpbmRleCQ1LnNldHVwSGFwaUVycm9ySGFuZGxlcjtcbmV4cG9ydHMuaG9ub0ludGVncmF0aW9uID0gaW5kZXgkNi5ob25vSW50ZWdyYXRpb247XG5leHBvcnRzLnNldHVwSG9ub0Vycm9ySGFuZGxlciA9IGluZGV4JDYuc2V0dXBIb25vRXJyb3JIYW5kbGVyO1xuZXhwb3J0cy5rb2FJbnRlZ3JhdGlvbiA9IGtvYS5rb2FJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuc2V0dXBLb2FFcnJvckhhbmRsZXIgPSBrb2Euc2V0dXBLb2FFcnJvckhhbmRsZXI7XG5leHBvcnRzLmNvbm5lY3RJbnRlZ3JhdGlvbiA9IGNvbm5lY3QuY29ubmVjdEludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cENvbm5lY3RFcnJvckhhbmRsZXIgPSBjb25uZWN0LnNldHVwQ29ubmVjdEVycm9ySGFuZGxlcjtcbmV4cG9ydHMua25leEludGVncmF0aW9uID0ga25leC5rbmV4SW50ZWdyYXRpb247XG5leHBvcnRzLnRlZGlvdXNJbnRlZ3JhdGlvbiA9IHRlZGlvdXMudGVkaW91c0ludGVncmF0aW9uO1xuZXhwb3J0cy5nZW5lcmljUG9vbEludGVncmF0aW9uID0gZ2VuZXJpY1Bvb2wuZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZGF0YWxvYWRlckludGVncmF0aW9uID0gZGF0YWxvYWRlci5kYXRhbG9hZGVySW50ZWdyYXRpb247XG5leHBvcnRzLmFtcXBsaWJJbnRlZ3JhdGlvbiA9IGFtcXBsaWIuYW1xcGxpYkludGVncmF0aW9uO1xuZXhwb3J0cy52ZXJjZWxBSUludGVncmF0aW9uID0gaW5kZXgkYS52ZXJjZWxBSUludGVncmF0aW9uO1xuZXhwb3J0cy5vcGVuQUlJbnRlZ3JhdGlvbiA9IGluZGV4JDkub3BlbkFJSW50ZWdyYXRpb247XG5leHBvcnRzLmFudGhyb3BpY0FJSW50ZWdyYXRpb24gPSBpbmRleC5hbnRocm9waWNBSUludGVncmF0aW9uO1xuZXhwb3J0cy5nb29nbGVHZW5BSUludGVncmF0aW9uID0gaW5kZXgkNC5nb29nbGVHZW5BSUludGVncmF0aW9uO1xuZXhwb3J0cy5sYW5nQ2hhaW5JbnRlZ3JhdGlvbiA9IGluZGV4JDcubGFuZ0NoYWluSW50ZWdyYXRpb247XG5leHBvcnRzLmxhbmdHcmFwaEludGVncmF0aW9uID0gaW5kZXgkOC5sYW5nR3JhcGhJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXIgPSBsYXVuY2hEYXJrbHkuYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltO1xuZXhwb3J0cy5sYXVuY2hEYXJrbHlJbnRlZ3JhdGlvbiA9IGxhdW5jaERhcmtseS5sYXVuY2hEYXJrbHlJbnRlZ3JhdGlvblNoaW07XG5leHBvcnRzLk9wZW5GZWF0dXJlSW50ZWdyYXRpb25Ib29rID0gb3BlbkZlYXR1cmUuT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltO1xuZXhwb3J0cy5vcGVuRmVhdHVyZUludGVncmF0aW9uID0gb3BlbkZlYXR1cmUub3BlbkZlYXR1cmVJbnRlZ3JhdGlvblNoaW07XG5leHBvcnRzLnN0YXRzaWdJbnRlZ3JhdGlvbiA9IHN0YXRzaWcuc3RhdHNpZ0ludGVncmF0aW9uU2hpbTtcbmV4cG9ydHMudW5sZWFzaEludGVncmF0aW9uID0gdW5sZWFzaC51bmxlYXNoSW50ZWdyYXRpb25TaGltO1xuZXhwb3J0cy5ncm93dGhib29rSW50ZWdyYXRpb24gPSBncm93dGhib29rLmdyb3d0aGJvb2tJbnRlZ3JhdGlvblNoaW07XG5leHBvcnRzLmZpcmViYXNlSW50ZWdyYXRpb24gPSBmaXJlYmFzZS5maXJlYmFzZUludGVncmF0aW9uO1xuZXhwb3J0cy5nZXREZWZhdWx0SW50ZWdyYXRpb25zID0gaW5kZXgkMy5nZXREZWZhdWx0SW50ZWdyYXRpb25zO1xuZXhwb3J0cy5nZXREZWZhdWx0SW50ZWdyYXRpb25zV2l0aG91dFBlcmZvcm1hbmNlID0gaW5kZXgkMy5nZXREZWZhdWx0SW50ZWdyYXRpb25zV2l0aG91dFBlcmZvcm1hbmNlO1xuZXhwb3J0cy5pbml0ID0gaW5kZXgkMy5pbml0O1xuZXhwb3J0cy5pbml0V2l0aG91dERlZmF1bHRJbnRlZ3JhdGlvbnMgPSBpbmRleCQzLmluaXRXaXRob3V0RGVmYXVsdEludGVncmF0aW9ucztcbmV4cG9ydHMuaW5pdE9wZW5UZWxlbWV0cnkgPSBpbml0T3RlbC5pbml0T3BlblRlbGVtZXRyeTtcbmV4cG9ydHMucHJlbG9hZE9wZW5UZWxlbWV0cnkgPSBpbml0T3RlbC5wcmVsb2FkT3BlblRlbGVtZXRyeTtcbmV4cG9ydHMuZ2V0QXV0b1BlcmZvcm1hbmNlSW50ZWdyYXRpb25zID0gaW5kZXgkMi5nZXRBdXRvUGVyZm9ybWFuY2VJbnRlZ3JhdGlvbnM7XG5leHBvcnRzLnNldE5vZGVBc3luY0NvbnRleHRTdHJhdGVneSA9IG9wZW50ZWxlbWV0cnkuc2V0T3BlblRlbGVtZXRyeUNvbnRleHRBc3luY0NvbnRleHRTdHJhdGVneTtcbmV4cG9ydHMuU0RLX1ZFUlNJT04gPSBjb3JlLlNES19WRVJTSU9OO1xuZXhwb3J0cy5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QID0gY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QO1xuZXhwb3J0cy5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTiA9IGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU47XG5leHBvcnRzLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfU0FNUExFX1JBVEUgPSBjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfU0FNUExFX1JBVEU7XG5leHBvcnRzLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfU09VUkNFID0gY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX1NPVVJDRTtcbmV4cG9ydHMuU2NvcGUgPSBjb3JlLlNjb3BlO1xuZXhwb3J0cy5hZGRCcmVhZGNydW1iID0gY29yZS5hZGRCcmVhZGNydW1iO1xuZXhwb3J0cy5hZGRFdmVudFByb2Nlc3NvciA9IGNvcmUuYWRkRXZlbnRQcm9jZXNzb3I7XG5leHBvcnRzLmFkZEludGVncmF0aW9uID0gY29yZS5hZGRJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY2FwdHVyZUNoZWNrSW4gPSBjb3JlLmNhcHR1cmVDaGVja0luO1xuZXhwb3J0cy5jYXB0dXJlQ29uc29sZUludGVncmF0aW9uID0gY29yZS5jYXB0dXJlQ29uc29sZUludGVncmF0aW9uO1xuZXhwb3J0cy5jYXB0dXJlRXZlbnQgPSBjb3JlLmNhcHR1cmVFdmVudDtcbmV4cG9ydHMuY2FwdHVyZUV4Y2VwdGlvbiA9IGNvcmUuY2FwdHVyZUV4Y2VwdGlvbjtcbmV4cG9ydHMuY2FwdHVyZUZlZWRiYWNrID0gY29yZS5jYXB0dXJlRmVlZGJhY2s7XG5leHBvcnRzLmNhcHR1cmVNZXNzYWdlID0gY29yZS5jYXB0dXJlTWVzc2FnZTtcbmV4cG9ydHMuY2FwdHVyZVNlc3Npb24gPSBjb3JlLmNhcHR1cmVTZXNzaW9uO1xuZXhwb3J0cy5jbG9zZSA9IGNvcmUuY2xvc2U7XG5leHBvcnRzLmNvbnNvbGVJbnRlZ3JhdGlvbiA9IGNvcmUuY29uc29sZUludGVncmF0aW9uO1xuZXhwb3J0cy5jb25zb2xlTG9nZ2luZ0ludGVncmF0aW9uID0gY29yZS5jb25zb2xlTG9nZ2luZ0ludGVncmF0aW9uO1xuZXhwb3J0cy5jb250aW51ZVRyYWNlID0gY29yZS5jb250aW51ZVRyYWNlO1xuZXhwb3J0cy5jcmVhdGVDb25zb2xhUmVwb3J0ZXIgPSBjb3JlLmNyZWF0ZUNvbnNvbGFSZXBvcnRlcjtcbmV4cG9ydHMuY3JlYXRlTGFuZ0NoYWluQ2FsbGJhY2tIYW5kbGVyID0gY29yZS5jcmVhdGVMYW5nQ2hhaW5DYWxsYmFja0hhbmRsZXI7XG5leHBvcnRzLmNyZWF0ZVRyYW5zcG9ydCA9IGNvcmUuY3JlYXRlVHJhbnNwb3J0O1xuZXhwb3J0cy5kZWR1cGVJbnRlZ3JhdGlvbiA9IGNvcmUuZGVkdXBlSW50ZWdyYXRpb247XG5leHBvcnRzLmVuZFNlc3Npb24gPSBjb3JlLmVuZFNlc3Npb247XG5leHBvcnRzLmV2ZW50RmlsdGVyc0ludGVncmF0aW9uID0gY29yZS5ldmVudEZpbHRlcnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZXh0cmFFcnJvckRhdGFJbnRlZ3JhdGlvbiA9IGNvcmUuZXh0cmFFcnJvckRhdGFJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZmVhdHVyZUZsYWdzSW50ZWdyYXRpb24gPSBjb3JlLmZlYXR1cmVGbGFnc0ludGVncmF0aW9uO1xuZXhwb3J0cy5mbHVzaCA9IGNvcmUuZmx1c2g7XG5leHBvcnRzLmZ1bmN0aW9uVG9TdHJpbmdJbnRlZ3JhdGlvbiA9IGNvcmUuZnVuY3Rpb25Ub1N0cmluZ0ludGVncmF0aW9uO1xuZXhwb3J0cy5nZXRBY3RpdmVTcGFuID0gY29yZS5nZXRBY3RpdmVTcGFuO1xuZXhwb3J0cy5nZXRDbGllbnQgPSBjb3JlLmdldENsaWVudDtcbmV4cG9ydHMuZ2V0Q3VycmVudFNjb3BlID0gY29yZS5nZXRDdXJyZW50U2NvcGU7XG5leHBvcnRzLmdldEdsb2JhbFNjb3BlID0gY29yZS5nZXRHbG9iYWxTY29wZTtcbmV4cG9ydHMuZ2V0SXNvbGF0aW9uU2NvcGUgPSBjb3JlLmdldElzb2xhdGlvblNjb3BlO1xuZXhwb3J0cy5nZXRSb290U3BhbiA9IGNvcmUuZ2V0Um9vdFNwYW47XG5leHBvcnRzLmdldFNwYW5EZXNjZW5kYW50cyA9IGNvcmUuZ2V0U3BhbkRlc2NlbmRhbnRzO1xuZXhwb3J0cy5nZXRTcGFuU3RhdHVzRnJvbUh0dHBDb2RlID0gY29yZS5nZXRTcGFuU3RhdHVzRnJvbUh0dHBDb2RlO1xuZXhwb3J0cy5nZXRUcmFjZURhdGEgPSBjb3JlLmdldFRyYWNlRGF0YTtcbmV4cG9ydHMuZ2V0VHJhY2VNZXRhVGFncyA9IGNvcmUuZ2V0VHJhY2VNZXRhVGFncztcbmV4cG9ydHMuaHR0cEhlYWRlcnNUb1NwYW5BdHRyaWJ1dGVzID0gY29yZS5odHRwSGVhZGVyc1RvU3BhbkF0dHJpYnV0ZXM7XG5leHBvcnRzLmluYm91bmRGaWx0ZXJzSW50ZWdyYXRpb24gPSBjb3JlLmluYm91bmRGaWx0ZXJzSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRBbnRocm9waWNBaUNsaWVudCA9IGNvcmUuaW5zdHJ1bWVudEFudGhyb3BpY0FpQ2xpZW50O1xuZXhwb3J0cy5pbnN0cnVtZW50R29vZ2xlR2VuQUlDbGllbnQgPSBjb3JlLmluc3RydW1lbnRHb29nbGVHZW5BSUNsaWVudDtcbmV4cG9ydHMuaW5zdHJ1bWVudExhbmdHcmFwaCA9IGNvcmUuaW5zdHJ1bWVudExhbmdHcmFwaDtcbmV4cG9ydHMuaW5zdHJ1bWVudE9wZW5BaUNsaWVudCA9IGNvcmUuaW5zdHJ1bWVudE9wZW5BaUNsaWVudDtcbmV4cG9ydHMuaW5zdHJ1bWVudFN0YXRlR3JhcGhDb21waWxlID0gY29yZS5pbnN0cnVtZW50U3RhdGVHcmFwaENvbXBpbGU7XG5leHBvcnRzLmluc3RydW1lbnRTdXBhYmFzZUNsaWVudCA9IGNvcmUuaW5zdHJ1bWVudFN1cGFiYXNlQ2xpZW50O1xuZXhwb3J0cy5pc0VuYWJsZWQgPSBjb3JlLmlzRW5hYmxlZDtcbmV4cG9ydHMuaXNJbml0aWFsaXplZCA9IGNvcmUuaXNJbml0aWFsaXplZDtcbmV4cG9ydHMubGFzdEV2ZW50SWQgPSBjb3JlLmxhc3RFdmVudElkO1xuZXhwb3J0cy5saW5rZWRFcnJvcnNJbnRlZ3JhdGlvbiA9IGNvcmUubGlua2VkRXJyb3JzSW50ZWdyYXRpb247XG5leHBvcnRzLnBhcmFtZXRlcml6ZSA9IGNvcmUucGFyYW1ldGVyaXplO1xuZXhwb3J0cy5wcm9maWxlciA9IGNvcmUucHJvZmlsZXI7XG5leHBvcnRzLnJlcXVlc3REYXRhSW50ZWdyYXRpb24gPSBjb3JlLnJlcXVlc3REYXRhSW50ZWdyYXRpb247XG5leHBvcnRzLnJld3JpdGVGcmFtZXNJbnRlZ3JhdGlvbiA9IGNvcmUucmV3cml0ZUZyYW1lc0ludGVncmF0aW9uO1xuZXhwb3J0cy5zZXRDb250ZXh0ID0gY29yZS5zZXRDb250ZXh0O1xuZXhwb3J0cy5zZXRDb252ZXJzYXRpb25JZCA9IGNvcmUuc2V0Q29udmVyc2F0aW9uSWQ7XG5leHBvcnRzLnNldEN1cnJlbnRDbGllbnQgPSBjb3JlLnNldEN1cnJlbnRDbGllbnQ7XG5leHBvcnRzLnNldEV4dHJhID0gY29yZS5zZXRFeHRyYTtcbmV4cG9ydHMuc2V0RXh0cmFzID0gY29yZS5zZXRFeHRyYXM7XG5leHBvcnRzLnNldEh0dHBTdGF0dXMgPSBjb3JlLnNldEh0dHBTdGF0dXM7XG5leHBvcnRzLnNldE1lYXN1cmVtZW50ID0gY29yZS5zZXRNZWFzdXJlbWVudDtcbmV4cG9ydHMuc2V0VGFnID0gY29yZS5zZXRUYWc7XG5leHBvcnRzLnNldFRhZ3MgPSBjb3JlLnNldFRhZ3M7XG5leHBvcnRzLnNldFVzZXIgPSBjb3JlLnNldFVzZXI7XG5leHBvcnRzLnNwYW5Ub0JhZ2dhZ2VIZWFkZXIgPSBjb3JlLnNwYW5Ub0JhZ2dhZ2VIZWFkZXI7XG5leHBvcnRzLnNwYW5Ub0pTT04gPSBjb3JlLnNwYW5Ub0pTT047XG5leHBvcnRzLnNwYW5Ub1RyYWNlSGVhZGVyID0gY29yZS5zcGFuVG9UcmFjZUhlYWRlcjtcbmV4cG9ydHMuc3RhcnRJbmFjdGl2ZVNwYW4gPSBjb3JlLnN0YXJ0SW5hY3RpdmVTcGFuO1xuZXhwb3J0cy5zdGFydE5ld1RyYWNlID0gY29yZS5zdGFydE5ld1RyYWNlO1xuZXhwb3J0cy5zdGFydFNlc3Npb24gPSBjb3JlLnN0YXJ0U2Vzc2lvbjtcbmV4cG9ydHMuc3RhcnRTcGFuID0gY29yZS5zdGFydFNwYW47XG5leHBvcnRzLnN0YXJ0U3Bhbk1hbnVhbCA9IGNvcmUuc3RhcnRTcGFuTWFudWFsO1xuZXhwb3J0cy5zdXBhYmFzZUludGVncmF0aW9uID0gY29yZS5zdXBhYmFzZUludGVncmF0aW9uO1xuZXhwb3J0cy5zdXBwcmVzc1RyYWNpbmcgPSBjb3JlLnN1cHByZXNzVHJhY2luZztcbmV4cG9ydHMudHJwY01pZGRsZXdhcmUgPSBjb3JlLnRycGNNaWRkbGV3YXJlO1xuZXhwb3J0cy51cGRhdGVTcGFuTmFtZSA9IGNvcmUudXBkYXRlU3Bhbk5hbWU7XG5leHBvcnRzLndpbnRlckNHSGVhZGVyc1RvRGljdCA9IGNvcmUud2ludGVyQ0dIZWFkZXJzVG9EaWN0O1xuZXhwb3J0cy53aXRoQWN0aXZlU3BhbiA9IGNvcmUud2l0aEFjdGl2ZVNwYW47XG5leHBvcnRzLndpdGhJc29sYXRpb25TY29wZSA9IGNvcmUud2l0aElzb2xhdGlvblNjb3BlO1xuZXhwb3J0cy53aXRoTW9uaXRvciA9IGNvcmUud2l0aE1vbml0b3I7XG5leHBvcnRzLndpdGhTY29wZSA9IGNvcmUud2l0aFNjb3BlO1xuZXhwb3J0cy53cmFwTWNwU2VydmVyV2l0aFNlbnRyeSA9IGNvcmUud3JhcE1jcFNlcnZlcldpdGhTZW50cnk7XG5leHBvcnRzLnpvZEVycm9yc0ludGVncmF0aW9uID0gY29yZS56b2RFcnJvcnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuTk9ERV9WRVJTSU9OID0gbm9kZUNvcmUuTk9ERV9WRVJTSU9OO1xuZXhwb3J0cy5Ob2RlQ2xpZW50ID0gbm9kZUNvcmUuTm9kZUNsaWVudDtcbmV4cG9ydHMuU2VudHJ5Q29udGV4dE1hbmFnZXIgPSBub2RlQ29yZS5TZW50cnlDb250ZXh0TWFuYWdlcjtcbmV4cG9ydHMuYW5ySW50ZWdyYXRpb24gPSBub2RlQ29yZS5hbnJJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY2hpbGRQcm9jZXNzSW50ZWdyYXRpb24gPSBub2RlQ29yZS5jaGlsZFByb2Nlc3NJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY29udGV4dExpbmVzSW50ZWdyYXRpb24gPSBub2RlQ29yZS5jb250ZXh0TGluZXNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY3JlYXRlR2V0TW9kdWxlRnJvbUZpbGVuYW1lID0gbm9kZUNvcmUuY3JlYXRlR2V0TW9kdWxlRnJvbUZpbGVuYW1lO1xuZXhwb3J0cy5jcmVhdGVTZW50cnlXaW5zdG9uVHJhbnNwb3J0ID0gbm9kZUNvcmUuY3JlYXRlU2VudHJ5V2luc3RvblRyYW5zcG9ydDtcbmV4cG9ydHMuY3JvbiA9IG5vZGVDb3JlLmNyb247XG5leHBvcnRzLmRlZmF1bHRTdGFja1BhcnNlciA9IG5vZGVDb3JlLmRlZmF1bHRTdGFja1BhcnNlcjtcbmV4cG9ydHMuZGlzYWJsZUFuckRldGVjdGlvbkZvckNhbGxiYWNrID0gbm9kZUNvcmUuZGlzYWJsZUFuckRldGVjdGlvbkZvckNhbGxiYWNrO1xuZXhwb3J0cy5nZW5lcmF0ZUluc3RydW1lbnRPbmNlID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZTtcbmV4cG9ydHMuZ2V0U2VudHJ5UmVsZWFzZSA9IG5vZGVDb3JlLmdldFNlbnRyeVJlbGVhc2U7XG5leHBvcnRzLmh0dHBTZXJ2ZXJJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLmh0dHBTZXJ2ZXJJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaHR0cFNlcnZlclNwYW5zSW50ZWdyYXRpb24gPSBub2RlQ29yZS5odHRwU2VydmVyU3BhbnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMubG9jYWxWYXJpYWJsZXNJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLmxvY2FsVmFyaWFibGVzSW50ZWdyYXRpb247XG5leHBvcnRzLmxvZ2dlciA9IG5vZGVDb3JlLmxvZ2dlcjtcbmV4cG9ydHMubWFrZU5vZGVUcmFuc3BvcnQgPSBub2RlQ29yZS5tYWtlTm9kZVRyYW5zcG9ydDtcbmV4cG9ydHMubWV0cmljcyA9IG5vZGVDb3JlLm1ldHJpY3M7XG5leHBvcnRzLm1vZHVsZXNJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm1vZHVsZXNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMubm9kZUNvbnRleHRJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm5vZGVDb250ZXh0SW50ZWdyYXRpb247XG5leHBvcnRzLm5vZGVSdW50aW1lTWV0cmljc0ludGVncmF0aW9uID0gbm9kZUNvcmUubm9kZVJ1bnRpbWVNZXRyaWNzSW50ZWdyYXRpb247XG5leHBvcnRzLm9uVW5jYXVnaHRFeGNlcHRpb25JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm9uVW5jYXVnaHRFeGNlcHRpb25JbnRlZ3JhdGlvbjtcbmV4cG9ydHMub25VbmhhbmRsZWRSZWplY3Rpb25JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm9uVW5oYW5kbGVkUmVqZWN0aW9uSW50ZWdyYXRpb247XG5leHBvcnRzLnBpbm9JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLnBpbm9JbnRlZ3JhdGlvbjtcbmV4cG9ydHMucHJvY2Vzc1Nlc3Npb25JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLnByb2Nlc3NTZXNzaW9uSW50ZWdyYXRpb247XG5leHBvcnRzLnNwb3RsaWdodEludGVncmF0aW9uID0gbm9kZUNvcmUuc3BvdGxpZ2h0SW50ZWdyYXRpb247XG5leHBvcnRzLnN5c3RlbUVycm9ySW50ZWdyYXRpb24gPSBub2RlQ29yZS5zeXN0ZW1FcnJvckludGVncmF0aW9uO1xuZXhwb3J0cy52YWxpZGF0ZU9wZW5UZWxlbWV0cnlTZXR1cCA9IG5vZGVDb3JlLnZhbGlkYXRlT3BlblRlbGVtZXRyeVNldHVwO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js":
/*!*********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js ***!
\*********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * Re-export the core GrowthBook integration for Node.js usage.\n * The core integration is runtime-agnostic and works in both browser and Node environments.\n */\nconst growthbookIntegrationShim = core.growthbookIntegration;\n\nexports.growthbookIntegrationShim = growthbookIntegrationShim;\n//# sourceMappingURL=growthbook.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvZ3Jvd3RoYm9vay5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsaUNBQWlDO0FBQ2pDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy9mZWF0dXJlRmxhZ1NoaW1zL2dyb3d0aGJvb2suanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcblxuLyoqXG4gKiBSZS1leHBvcnQgdGhlIGNvcmUgR3Jvd3RoQm9vayBpbnRlZ3JhdGlvbiBmb3IgTm9kZS5qcyB1c2FnZS5cbiAqIFRoZSBjb3JlIGludGVncmF0aW9uIGlzIHJ1bnRpbWUtYWdub3N0aWMgYW5kIHdvcmtzIGluIGJvdGggYnJvd3NlciBhbmQgTm9kZSBlbnZpcm9ubWVudHMuXG4gKi9cbmNvbnN0IGdyb3d0aGJvb2tJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmdyb3d0aGJvb2tJbnRlZ3JhdGlvbjtcblxuZXhwb3J0cy5ncm93dGhib29rSW50ZWdyYXRpb25TaGltID0gZ3Jvd3RoYm9va0ludGVncmF0aW9uU2hpbTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdyb3d0aGJvb2suanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js":
/*!***********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js ***!
\***********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the LaunchDarkly integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst launchDarklyIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The launchDarklyIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'LaunchDarkly',\n };\n});\n\n/**\n * This is a shim for the LaunchDarkly flag used handler.\n */\nfunction buildLaunchDarklyFlagUsedHandlerShim() {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The buildLaunchDarklyFlagUsedHandler() can only be used in the browser.');\n });\n }\n\n return {\n name: 'sentry-flag-auditor',\n type: 'flag-used',\n synchronous: true,\n method: () => null,\n };\n}\n\nexports.buildLaunchDarklyFlagUsedHandlerShim = buildLaunchDarklyFlagUsedHandlerShim;\nexports.launchDarklyIntegrationShim = launchDarklyIntegrationShim;\n//# sourceMappingURL=launchDarkly.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvbGF1bmNoRGFya2x5LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYzs7QUFFbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0Q0FBNEM7QUFDNUMsbUNBQW1DO0FBQ25DIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy9mZWF0dXJlRmxhZ1NoaW1zL2xhdW5jaERhcmtseS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGltIGZvciB0aGUgTGF1bmNoRGFya2x5IGludGVncmF0aW9uLlxuICogV2UgbmVlZCB0aGlzIGluIG9yZGVyIHRvIG5vdCB0aHJvdyBydW50aW1lIGVycm9ycyB3aGVuIGFjY2lkZW50YWxseSBpbXBvcnRpbmcgdGhpcyBvbiB0aGUgc2VydmVyIHRocm91Z2ggYSBtZXRhIGZyYW1ld29yayBsaWtlIE5leHQuanMuXG4gKi9cbmNvbnN0IGxhdW5jaERhcmtseUludGVncmF0aW9uU2hpbSA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oKF9vcHRpb25zKSA9PiB7XG4gIGlmICghY29yZS5pc0Jyb3dzZXIoKSkge1xuICAgIGNvcmUuY29uc29sZVNhbmRib3goKCkgPT4ge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIGNvbnNvbGUud2FybignVGhlIGxhdW5jaERhcmtseUludGVncmF0aW9uKCkgY2FuIG9ubHkgYmUgdXNlZCBpbiB0aGUgYnJvd3Nlci4nKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbmFtZTogJ0xhdW5jaERhcmtseScsXG4gIH07XG59KTtcblxuLyoqXG4gKiBUaGlzIGlzIGEgc2hpbSBmb3IgdGhlIExhdW5jaERhcmtseSBmbGFnIHVzZWQgaGFuZGxlci5cbiAqL1xuZnVuY3Rpb24gYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltKCkge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBidWlsZExhdW5jaERhcmtseUZsYWdVc2VkSGFuZGxlcigpIGNhbiBvbmx5IGJlIHVzZWQgaW4gdGhlIGJyb3dzZXIuJyk7XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIG5hbWU6ICdzZW50cnktZmxhZy1hdWRpdG9yJyxcbiAgICB0eXBlOiAnZmxhZy11c2VkJyxcbiAgICBzeW5jaHJvbm91czogdHJ1ZSxcbiAgICBtZXRob2Q6ICgpID0+IG51bGwsXG4gIH07XG59XG5cbmV4cG9ydHMuYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltID0gYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltO1xuZXhwb3J0cy5sYXVuY2hEYXJrbHlJbnRlZ3JhdGlvblNoaW0gPSBsYXVuY2hEYXJrbHlJbnRlZ3JhdGlvblNoaW07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1sYXVuY2hEYXJrbHkuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the OpenFeature integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst openFeatureIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The openFeatureIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'OpenFeature',\n };\n});\n\n/**\n * This is a shim for the OpenFeature integration hook.\n */\nclass OpenFeatureIntegrationHookShim {\n /**\n *\n */\n constructor() {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The OpenFeatureIntegrationHook can only be used in the browser.');\n });\n }\n }\n\n /**\n *\n */\n after() {\n // No-op\n }\n\n /**\n *\n */\n error() {\n // No-op\n }\n}\n\nexports.OpenFeatureIntegrationHookShim = OpenFeatureIntegrationHookShim;\nexports.openFeatureIntegrationShim = openFeatureIntegrationShim;\n//# sourceMappingURL=openFeature.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvb3BlbkZlYXR1cmUuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjOztBQUVuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0NBQXNDO0FBQ3RDLGtDQUFrQztBQUNsQyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9vcGVuRmVhdHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGltIGZvciB0aGUgT3BlbkZlYXR1cmUgaW50ZWdyYXRpb24uXG4gKiBXZSBuZWVkIHRoaXMgaW4gb3JkZXIgdG8gbm90IHRocm93IHJ1bnRpbWUgZXJyb3JzIHdoZW4gYWNjaWRlbnRhbGx5IGltcG9ydGluZyB0aGlzIG9uIHRoZSBzZXJ2ZXIgdGhyb3VnaCBhIG1ldGEgZnJhbWV3b3JrIGxpa2UgTmV4dC5qcy5cbiAqL1xuY29uc3Qgb3BlbkZlYXR1cmVJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChfb3B0aW9ucykgPT4ge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBvcGVuRmVhdHVyZUludGVncmF0aW9uKCkgY2FuIG9ubHkgYmUgdXNlZCBpbiB0aGUgYnJvd3Nlci4nKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbmFtZTogJ09wZW5GZWF0dXJlJyxcbiAgfTtcbn0pO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGltIGZvciB0aGUgT3BlbkZlYXR1cmUgaW50ZWdyYXRpb24gaG9vay5cbiAqL1xuY2xhc3MgT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltIHtcbiAgLyoqXG4gICAqXG4gICAqL1xuICAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFjb3JlLmlzQnJvd3NlcigpKSB7XG4gICAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgY29uc29sZS53YXJuKCdUaGUgT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2sgY2FuIG9ubHkgYmUgdXNlZCBpbiB0aGUgYnJvd3Nlci4nKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKi9cbiAgIGFmdGVyKCkge1xuICAgIC8vIE5vLW9wXG4gIH1cblxuICAvKipcbiAgICpcbiAgICovXG4gICBlcnJvcigpIHtcbiAgICAvLyBOby1vcFxuICB9XG59XG5cbmV4cG9ydHMuT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltID0gT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltO1xuZXhwb3J0cy5vcGVuRmVhdHVyZUludGVncmF0aW9uU2hpbSA9IG9wZW5GZWF0dXJlSW50ZWdyYXRpb25TaGltO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9b3BlbkZlYXR1cmUuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the Statsig integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst statsigIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The statsigIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'Statsig',\n };\n});\n\nexports.statsigIntegrationShim = statsigIntegrationShim;\n//# sourceMappingURL=statsig.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvc3RhdHNpZy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVELDhCQUE4QjtBQUM5QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9zdGF0c2lnLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5cbi8qKlxuICogVGhpcyBpcyBhIHNoaW0gZm9yIHRoZSBTdGF0c2lnIGludGVncmF0aW9uLlxuICogV2UgbmVlZCB0aGlzIGluIG9yZGVyIHRvIG5vdCB0aHJvdyBydW50aW1lIGVycm9ycyB3aGVuIGFjY2lkZW50YWxseSBpbXBvcnRpbmcgdGhpcyBvbiB0aGUgc2VydmVyIHRocm91Z2ggYSBtZXRhIGZyYW1ld29yayBsaWtlIE5leHQuanMuXG4gKi9cbmNvbnN0IHN0YXRzaWdJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChfb3B0aW9ucykgPT4ge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBzdGF0c2lnSW50ZWdyYXRpb24oKSBjYW4gb25seSBiZSB1c2VkIGluIHRoZSBicm93c2VyLicpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnU3RhdHNpZycsXG4gIH07XG59KTtcblxuZXhwb3J0cy5zdGF0c2lnSW50ZWdyYXRpb25TaGltID0gc3RhdHNpZ0ludGVncmF0aW9uU2hpbTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0YXRzaWcuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the Unleash integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst unleashIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The unleashIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'Unleash',\n };\n});\n\nexports.unleashIntegrationShim = unleashIntegrationShim;\n//# sourceMappingURL=unleash.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvdW5sZWFzaC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVELDhCQUE4QjtBQUM5QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy91bmxlYXNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5cbi8qKlxuICogVGhpcyBpcyBhIHNoaW0gZm9yIHRoZSBVbmxlYXNoIGludGVncmF0aW9uLlxuICogV2UgbmVlZCB0aGlzIGluIG9yZGVyIHRvIG5vdCB0aHJvdyBydW50aW1lIGVycm9ycyB3aGVuIGFjY2lkZW50YWxseSBpbXBvcnRpbmcgdGhpcyBvbiB0aGUgc2VydmVyIHRocm91Z2ggYSBtZXRhIGZyYW1ld29yayBsaWtlIE5leHQuanMuXG4gKi9cbmNvbnN0IHVubGVhc2hJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChfb3B0aW9ucykgPT4ge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSB1bmxlYXNoSW50ZWdyYXRpb24oKSBjYW4gb25seSBiZSB1c2VkIGluIHRoZSBicm93c2VyLicpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnVW5sZWFzaCcsXG4gIH07XG59KTtcblxuZXhwb3J0cy51bmxlYXNoSW50ZWdyYXRpb25TaGltID0gdW5sZWFzaEludGVncmF0aW9uU2hpbTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXVubGVhc2guanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationFs = __webpack_require__(/*! @opentelemetry/instrumentation-fs */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-fs@0.33.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-fs/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'FileSystem';\n\n/**\n * This integration will create spans for `fs` API operations, like reading and writing files.\n *\n * **WARNING:** This integration may add significant overhead to your application. Especially in scenarios with a lot of\n * file I/O, like for example when running a framework dev server, including this integration can massively slow down\n * your application.\n *\n * @param options Configuration for this integration.\n */\nconst fsIntegration = core.defineIntegration(\n (\n options\n\n = {},\n ) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationFs.FsInstrumentation({\n requireParentSpan: true,\n endHook(functionName, { args, span, error }) {\n span.updateName(`fs.${functionName}`);\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'file',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.file.fs',\n });\n\n if (options.recordErrorMessagesAsSpanAttributes) {\n if (typeof args[0] === 'string' && FS_OPERATIONS_WITH_PATH_ARG.includes(functionName)) {\n span.setAttribute('path_argument', args[0]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_TARGET_PATH.includes(functionName)\n ) {\n span.setAttribute('target_argument', args[0]);\n span.setAttribute('path_argument', args[1]);\n } else if (typeof args[0] === 'string' && FS_OPERATIONS_WITH_PREFIX.includes(functionName)) {\n span.setAttribute('prefix_argument', args[0]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_EXISTING_PATH_NEW_PATH.includes(functionName)\n ) {\n span.setAttribute('existing_path_argument', args[0]);\n span.setAttribute('new_path_argument', args[1]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_SRC_DEST.includes(functionName)\n ) {\n span.setAttribute('src_argument', args[0]);\n span.setAttribute('dest_argument', args[1]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_OLD_PATH_NEW_PATH.includes(functionName)\n ) {\n span.setAttribute('old_path_argument', args[0]);\n span.setAttribute('new_path_argument', args[1]);\n }\n }\n\n if (error && options.recordErrorMessagesAsSpanAttributes) {\n span.setAttribute('fs_error', error.message);\n }\n },\n }),\n )();\n },\n };\n },\n);\n\nconst FS_OPERATIONS_WITH_OLD_PATH_NEW_PATH = ['rename', 'renameSync'];\nconst FS_OPERATIONS_WITH_SRC_DEST = ['copyFile', 'cp', 'copyFileSync', 'cpSync'];\nconst FS_OPERATIONS_WITH_EXISTING_PATH_NEW_PATH = ['link', 'linkSync'];\nconst FS_OPERATIONS_WITH_PREFIX = ['mkdtemp', 'mkdtempSync'];\nconst FS_OPERATIONS_WITH_TARGET_PATH = ['symlink', 'symlinkSync'];\nconst FS_OPERATIONS_WITH_PATH_ARG = [\n 'access',\n 'appendFile',\n 'chmod',\n 'chown',\n 'exists',\n 'mkdir',\n 'lchown',\n 'lstat',\n 'lutimes',\n 'open',\n 'opendir',\n 'readdir',\n 'readFile',\n 'readlink',\n 'realpath',\n 'realpath.native',\n 'rm',\n 'rmdir',\n 'stat',\n 'truncate',\n 'unlink',\n 'utimes',\n 'writeFile',\n 'accessSync',\n 'appendFileSync',\n 'chmodSync',\n 'chownSync',\n 'existsSync',\n 'lchownSync',\n 'lstatSync',\n 'lutimesSync',\n 'opendirSync',\n 'mkdirSync',\n 'openSync',\n 'readdirSync',\n 'readFileSync',\n 'readlinkSync',\n 'realpathSync',\n 'realpathSync.native',\n 'rmdirSync',\n 'rmSync',\n 'statSync',\n 'truncateSync',\n 'unlinkSync',\n 'utimesSync',\n 'writeFileSync',\n];\n\nexports.fsIntegration = fsIntegration;\n//# sourceMappingURL=fs.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZzLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLDBCQUEwQixtQkFBTyxDQUFDLHlNQUFtQztBQUNyRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1COztBQUU1Qzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyxtQkFBbUI7QUFDekQsc0NBQXNDLGFBQWE7O0FBRW5EO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjs7QUFFakI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQjtBQUNwQjtBQUNBLG9CQUFvQjtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmLGFBQWE7QUFDYjtBQUNBLE9BQU87QUFDUDtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHFCQUFxQjtBQUNyQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbkZzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWZzJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnRmlsZVN5c3RlbSc7XG5cbi8qKlxuICogVGhpcyBpbnRlZ3JhdGlvbiB3aWxsIGNyZWF0ZSBzcGFucyBmb3IgYGZzYCBBUEkgb3BlcmF0aW9ucywgbGlrZSByZWFkaW5nIGFuZCB3cml0aW5nIGZpbGVzLlxuICpcbiAqICoqV0FSTklORzoqKiBUaGlzIGludGVncmF0aW9uIG1heSBhZGQgc2lnbmlmaWNhbnQgb3ZlcmhlYWQgdG8geW91ciBhcHBsaWNhdGlvbi4gRXNwZWNpYWxseSBpbiBzY2VuYXJpb3Mgd2l0aCBhIGxvdCBvZlxuICogZmlsZSBJL08sIGxpa2UgZm9yIGV4YW1wbGUgd2hlbiBydW5uaW5nIGEgZnJhbWV3b3JrIGRldiBzZXJ2ZXIsIGluY2x1ZGluZyB0aGlzIGludGVncmF0aW9uIGNhbiBtYXNzaXZlbHkgc2xvdyBkb3duXG4gKiB5b3VyIGFwcGxpY2F0aW9uLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb24gZm9yIHRoaXMgaW50ZWdyYXRpb24uXG4gKi9cbmNvbnN0IGZzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKFxuICAoXG4gICAgb3B0aW9uc1xuXG4gPSB7fSxcbiAgKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgICBzZXR1cE9uY2UoKSB7XG4gICAgICAgIG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gICAgICAgICAgSU5URUdSQVRJT05fTkFNRSxcbiAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgbmV3IGluc3RydW1lbnRhdGlvbkZzLkZzSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgICAgICAgICAgcmVxdWlyZVBhcmVudFNwYW46IHRydWUsXG4gICAgICAgICAgICAgIGVuZEhvb2soZnVuY3Rpb25OYW1lLCB7IGFyZ3MsIHNwYW4sIGVycm9yIH0pIHtcbiAgICAgICAgICAgICAgICBzcGFuLnVwZGF0ZU5hbWUoYGZzLiR7ZnVuY3Rpb25OYW1lfWApO1xuXG4gICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiAnZmlsZScsXG4gICAgICAgICAgICAgICAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTl06ICdhdXRvLmZpbGUuZnMnLFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMucmVjb3JkRXJyb3JNZXNzYWdlc0FzU3BhbkF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycgJiYgRlNfT1BFUkFUSU9OU19XSVRIX1BBVEhfQVJHLmluY2x1ZGVzKGZ1bmN0aW9uTmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3BhdGhfYXJndW1lbnQnLCBhcmdzWzBdKTtcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICAgICAgICB0eXBlb2YgYXJnc1sxXSA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAgICAgRlNfT1BFUkFUSU9OU19XSVRIX1RBUkdFVF9QQVRILmluY2x1ZGVzKGZ1bmN0aW9uTmFtZSlcbiAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgndGFyZ2V0X2FyZ3VtZW50JywgYXJnc1swXSk7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKCdwYXRoX2FyZ3VtZW50JywgYXJnc1sxXSk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJyAmJiBGU19PUEVSQVRJT05TX1dJVEhfUFJFRklYLmluY2x1ZGVzKGZ1bmN0aW9uTmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3ByZWZpeF9hcmd1bWVudCcsIGFyZ3NbMF0pO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgICAgIHR5cGVvZiBhcmdzWzFdID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICAgICAgICBGU19PUEVSQVRJT05TX1dJVEhfRVhJU1RJTkdfUEFUSF9ORVdfUEFUSC5pbmNsdWRlcyhmdW5jdGlvbk5hbWUpXG4gICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ2V4aXN0aW5nX3BhdGhfYXJndW1lbnQnLCBhcmdzWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ25ld19wYXRoX2FyZ3VtZW50JywgYXJnc1sxXSk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgICAgICAgICB0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGFyZ3NbMV0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgICAgIEZTX09QRVJBVElPTlNfV0lUSF9TUkNfREVTVC5pbmNsdWRlcyhmdW5jdGlvbk5hbWUpXG4gICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3NyY19hcmd1bWVudCcsIGFyZ3NbMF0pO1xuICAgICAgICAgICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnZGVzdF9hcmd1bWVudCcsIGFyZ3NbMV0pO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgICAgIHR5cGVvZiBhcmdzWzFdID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICAgICAgICBGU19PUEVSQVRJT05TX1dJVEhfT0xEX1BBVEhfTkVXX1BBVEguaW5jbHVkZXMoZnVuY3Rpb25OYW1lKVxuICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKCdvbGRfcGF0aF9hcmd1bWVudCcsIGFyZ3NbMF0pO1xuICAgICAgICAgICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnbmV3X3BhdGhfYXJndW1lbnQnLCBhcmdzWzFdKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoZXJyb3IgJiYgb3B0aW9ucy5yZWNvcmRFcnJvck1lc3NhZ2VzQXNTcGFuQXR0cmlidXRlcykge1xuICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ2ZzX2Vycm9yJywgZXJyb3IubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICkoKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfSxcbik7XG5cbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9PTERfUEFUSF9ORVdfUEFUSCA9IFsncmVuYW1lJywgJ3JlbmFtZVN5bmMnXTtcbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9TUkNfREVTVCA9IFsnY29weUZpbGUnLCAnY3AnLCAnY29weUZpbGVTeW5jJywgJ2NwU3luYyddO1xuY29uc3QgRlNfT1BFUkFUSU9OU19XSVRIX0VYSVNUSU5HX1BBVEhfTkVXX1BBVEggPSBbJ2xpbmsnLCAnbGlua1N5bmMnXTtcbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9QUkVGSVggPSBbJ21rZHRlbXAnLCAnbWtkdGVtcFN5bmMnXTtcbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9UQVJHRVRfUEFUSCA9IFsnc3ltbGluaycsICdzeW1saW5rU3luYyddO1xuY29uc3QgRlNfT1BFUkFUSU9OU19XSVRIX1BBVEhfQVJHID0gW1xuICAnYWNjZXNzJyxcbiAgJ2FwcGVuZEZpbGUnLFxuICAnY2htb2QnLFxuICAnY2hvd24nLFxuICAnZXhpc3RzJyxcbiAgJ21rZGlyJyxcbiAgJ2xjaG93bicsXG4gICdsc3RhdCcsXG4gICdsdXRpbWVzJyxcbiAgJ29wZW4nLFxuICAnb3BlbmRpcicsXG4gICdyZWFkZGlyJyxcbiAgJ3JlYWRGaWxlJyxcbiAgJ3JlYWRsaW5rJyxcbiAgJ3JlYWxwYXRoJyxcbiAgJ3JlYWxwYXRoLm5hdGl2ZScsXG4gICdybScsXG4gICdybWRpcicsXG4gICdzdGF0JyxcbiAgJ3RydW5jYXRlJyxcbiAgJ3VubGluaycsXG4gICd1dGltZXMnLFxuICAnd3JpdGVGaWxlJyxcbiAgJ2FjY2Vzc1N5bmMnLFxuICAnYXBwZW5kRmlsZVN5bmMnLFxuICAnY2htb2RTeW5jJyxcbiAgJ2Nob3duU3luYycsXG4gICdleGlzdHNTeW5jJyxcbiAgJ2xjaG93blN5bmMnLFxuICAnbHN0YXRTeW5jJyxcbiAgJ2x1dGltZXNTeW5jJyxcbiAgJ29wZW5kaXJTeW5jJyxcbiAgJ21rZGlyU3luYycsXG4gICdvcGVuU3luYycsXG4gICdyZWFkZGlyU3luYycsXG4gICdyZWFkRmlsZVN5bmMnLFxuICAncmVhZGxpbmtTeW5jJyxcbiAgJ3JlYWxwYXRoU3luYycsXG4gICdyZWFscGF0aFN5bmMubmF0aXZlJyxcbiAgJ3JtZGlyU3luYycsXG4gICdybVN5bmMnLFxuICAnc3RhdFN5bmMnLFxuICAndHJ1bmNhdGVTeW5jJyxcbiAgJ3VubGlua1N5bmMnLFxuICAndXRpbWVzU3luYycsXG4gICd3cml0ZUZpbGVTeW5jJyxcbl07XG5cbmV4cG9ydHMuZnNJbnRlZ3JhdGlvbiA9IGZzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1mcy5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentationHttp = __webpack_require__(/*! @opentelemetry/instrumentation-http */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-http@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-http/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Http';\n\nconst INSTRUMENTATION_NAME = '@opentelemetry_sentry-patched/instrumentation-http';\n\n// The `http.client.request.created` diagnostics channel, needed for trace propagation,\n// was added in Node 22.12.0 (backported from 23.2.0). Earlier 22.x versions don't have it.\nconst FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL =\n (nodeCore.NODE_VERSION.major === 22 && nodeCore.NODE_VERSION.minor >= 12) ||\n (nodeCore.NODE_VERSION.major === 23 && nodeCore.NODE_VERSION.minor >= 2) ||\n nodeCore.NODE_VERSION.major >= 24;\n\nconst instrumentSentryHttp = nodeCore.generateInstrumentOnce(\n `${INTEGRATION_NAME}.sentry`,\n options => {\n return new nodeCore.SentryHttpInstrumentation(options);\n },\n);\n\nconst instrumentOtelHttp = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, config => {\n const instrumentation = new instrumentationHttp.HttpInstrumentation({\n ...config,\n // This is hard-coded and can never be overridden by the user\n disableIncomingRequestInstrumentation: true,\n });\n\n // We want to update the logger namespace so we can better identify what is happening here\n try {\n instrumentation['_diag'] = api.diag.createComponentLogger({\n namespace: INSTRUMENTATION_NAME,\n });\n // @ts-expect-error We are writing a read-only property here...\n instrumentation.instrumentationName = INSTRUMENTATION_NAME;\n } catch {\n // ignore errors here...\n }\n\n // The OTel HttpInstrumentation (>=0.213.0) has a guard (`_httpPatched`/`_httpsPatched`)\n // that prevents patching `http`/`https` when loaded by both CJS `require()` and ESM `import`.\n // In environments like AWS Lambda, the runtime loads `http` via CJS first (for the Runtime API),\n // and then the user's ESM handler imports `node:http`. The guard blocks ESM patching after CJS,\n // which breaks HTTP spans for ESM handlers. We disable this guard to allow both to be patched.\n // TODO(andrei): Remove once https://github.com/open-telemetry/opentelemetry-js/issues/6489 is fixed.\n try {\n const noopDescriptor = { get: () => false, set: () => {} };\n Object.defineProperty(instrumentation, '_httpPatched', noopDescriptor);\n Object.defineProperty(instrumentation, '_httpsPatched', noopDescriptor);\n } catch {\n // ignore errors here...\n }\n\n return instrumentation;\n});\n\n/** Exported only for tests. */\nfunction _shouldUseOtelHttpInstrumentation(\n options,\n clientOptions = {},\n) {\n // If `spans` is passed in, it takes precedence\n // Else, we by default emit spans, unless `skipOpenTelemetrySetup` is set to `true` or spans are not enabled\n if (typeof options.spans === 'boolean') {\n return options.spans;\n }\n\n if (clientOptions.skipOpenTelemetrySetup) {\n return false;\n }\n\n // IMPORTANT: We only disable span instrumentation when spans are not enabled _and_ we are on a Node version\n // that fully supports the necessary diagnostics channels for trace propagation\n if (!core.hasSpansEnabled(clientOptions) && FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL) {\n return false;\n }\n\n return true;\n}\n\n/**\n * The http integration instruments Node's internal http and https modules.\n * It creates breadcrumbs and spans for outgoing HTTP requests which will be attached to the currently active span.\n */\nconst httpIntegration = core.defineIntegration((options = {}) => {\n const spans = options.spans ?? true;\n const disableIncomingRequestSpans = options.disableIncomingRequestSpans;\n\n const serverOptions = {\n sessions: options.trackIncomingRequestsAsSessions,\n sessionFlushingDelayMS: options.sessionFlushingDelayMS,\n ignoreRequestBody: options.ignoreIncomingRequestBody,\n maxRequestBodySize: options.maxIncomingRequestBodySize,\n } ;\n\n const serverSpansOptions = {\n ignoreIncomingRequests: options.ignoreIncomingRequests,\n ignoreStaticAssets: options.ignoreStaticAssets,\n ignoreStatusCodes: options.dropSpansForIncomingRequestStatusCodes,\n instrumentation: options.instrumentation,\n onSpanCreated: options.incomingRequestSpanHook,\n } ;\n\n const server = nodeCore.httpServerIntegration(serverOptions);\n const serverSpans = nodeCore.httpServerSpansIntegration(serverSpansOptions);\n\n const enableServerSpans = spans && !disableIncomingRequestSpans;\n\n return {\n name: INTEGRATION_NAME,\n setup(client) {\n const clientOptions = client.getOptions();\n\n if (enableServerSpans && core.hasSpansEnabled(clientOptions)) {\n serverSpans.setup(client);\n }\n },\n setupOnce() {\n const clientOptions = (core.getClient()?.getOptions() || {}) ;\n const useOtelHttpInstrumentation = _shouldUseOtelHttpInstrumentation(options, clientOptions);\n\n server.setupOnce();\n\n const sentryHttpInstrumentationOptions = {\n breadcrumbs: options.breadcrumbs,\n propagateTraceInOutgoingRequests:\n typeof options.tracePropagation === 'boolean'\n ? options.tracePropagation\n : FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL || !useOtelHttpInstrumentation,\n createSpansForOutgoingRequests: FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL,\n spans: options.spans,\n ignoreOutgoingRequests: options.ignoreOutgoingRequests,\n outgoingRequestHook: (span, request) => {\n // Sanitize data URLs to prevent long base64 strings in span attributes\n const url = nodeCore.getRequestUrl(request);\n if (url.startsWith('data:')) {\n const sanitizedUrl = core.stripDataUrlContent(url);\n span.setAttribute('http.url', sanitizedUrl);\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_URL_FULL, sanitizedUrl);\n span.updateName(`${request.method || 'GET'} ${sanitizedUrl}`);\n }\n\n options.instrumentation?.requestHook?.(span, request);\n },\n outgoingResponseHook: options.instrumentation?.responseHook,\n outgoingRequestApplyCustomAttributes: options.instrumentation?.applyCustomAttributesOnSpan,\n } ;\n\n // This is Sentry-specific instrumentation for outgoing request breadcrumbs & trace propagation\n instrumentSentryHttp(sentryHttpInstrumentationOptions);\n\n // This is the \"regular\" OTEL instrumentation that emits outgoing request spans\n if (useOtelHttpInstrumentation) {\n const instrumentationConfig = getConfigWithDefaults(options);\n instrumentOtelHttp(instrumentationConfig);\n }\n },\n processEvent(event) {\n // Note: We always run this, even if spans are disabled\n // The reason being that e.g. the remix integration disables span creation here but still wants to use the ignore status codes option\n return serverSpans.processEvent(event);\n },\n };\n});\n\nfunction getConfigWithDefaults(options = {}) {\n const instrumentationConfig = {\n // This is handled by the SentryHttpInstrumentation on Node 22+\n disableOutgoingRequestInstrumentation: FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL,\n\n ignoreOutgoingRequestHook: request => {\n const url = nodeCore.getRequestUrl(request);\n\n if (!url) {\n return false;\n }\n\n const _ignoreOutgoingRequests = options.ignoreOutgoingRequests;\n if (_ignoreOutgoingRequests?.(url, request)) {\n return true;\n }\n\n return false;\n },\n\n requireParentforOutgoingSpans: false,\n requestHook: (span, req) => {\n nodeCore.addOriginToSpan(span, 'auto.http.otel.http');\n\n // Sanitize data URLs to prevent long base64 strings in span attributes\n const url = nodeCore.getRequestUrl(req );\n if (url.startsWith('data:')) {\n const sanitizedUrl = core.stripDataUrlContent(url);\n span.setAttribute('http.url', sanitizedUrl);\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_URL_FULL, sanitizedUrl);\n span.updateName(`${(req ).method || 'GET'} ${sanitizedUrl}`);\n }\n\n options.instrumentation?.requestHook?.(span, req);\n },\n responseHook: (span, res) => {\n options.instrumentation?.responseHook?.(span, res);\n },\n applyCustomAttributesOnSpan: (\n span,\n request,\n response,\n ) => {\n options.instrumentation?.applyCustomAttributesOnSpan?.(span, request, response);\n },\n } ;\n\n return instrumentationConfig;\n}\n\nexports._shouldUseOtelHttpInstrumentation = _shouldUseOtelHttpInstrumentation;\nexports.httpIntegration = httpIntegration;\nexports.instrumentOtelHttp = instrumentOtelHttp;\nexports.instrumentSentryHttp = instrumentSentryHttp;\n//# sourceMappingURL=http.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2h0dHAuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsWUFBWSxtQkFBTyxDQUFDLGtJQUFvQjtBQUN4Qyw0QkFBNEIsbUJBQU8sQ0FBQyxnTkFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsS0FBSyxpQkFBaUI7QUFDdEI7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBOztBQUVBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0REFBNEQ7QUFDNUQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxpRUFBaUU7QUFDakU7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0IseUJBQXlCLEVBQUUsYUFBYTtBQUN2RTs7QUFFQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRCwyQ0FBMkM7QUFDM0M7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLHdCQUF3QixFQUFFLGFBQWE7QUFDbEU7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQSx5Q0FBeUM7QUFDekMsdUJBQXVCO0FBQ3ZCLDBCQUEwQjtBQUMxQiw0QkFBNEI7QUFDNUIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2h0dHAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uSHR0cCA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1odHRwJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnSHR0cCc7XG5cbmNvbnN0IElOU1RSVU1FTlRBVElPTl9OQU1FID0gJ0BvcGVudGVsZW1ldHJ5X3NlbnRyeS1wYXRjaGVkL2luc3RydW1lbnRhdGlvbi1odHRwJztcblxuLy8gVGhlIGBodHRwLmNsaWVudC5yZXF1ZXN0LmNyZWF0ZWRgIGRpYWdub3N0aWNzIGNoYW5uZWwsIG5lZWRlZCBmb3IgdHJhY2UgcHJvcGFnYXRpb24sXG4vLyB3YXMgYWRkZWQgaW4gTm9kZSAyMi4xMi4wIChiYWNrcG9ydGVkIGZyb20gMjMuMi4wKS4gRWFybGllciAyMi54IHZlcnNpb25zIGRvbid0IGhhdmUgaXQuXG5jb25zdCBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwgPVxuICAobm9kZUNvcmUuTk9ERV9WRVJTSU9OLm1ham9yID09PSAyMiAmJiBub2RlQ29yZS5OT0RFX1ZFUlNJT04ubWlub3IgPj0gMTIpIHx8XG4gIChub2RlQ29yZS5OT0RFX1ZFUlNJT04ubWFqb3IgPT09IDIzICYmIG5vZGVDb3JlLk5PREVfVkVSU0lPTi5taW5vciA+PSAyKSB8fFxuICBub2RlQ29yZS5OT0RFX1ZFUlNJT04ubWFqb3IgPj0gMjQ7XG5cbmNvbnN0IGluc3RydW1lbnRTZW50cnlIdHRwID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgYCR7SU5URUdSQVRJT05fTkFNRX0uc2VudHJ5YCxcbiAgb3B0aW9ucyA9PiB7XG4gICAgcmV0dXJuIG5ldyBub2RlQ29yZS5TZW50cnlIdHRwSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpO1xuICB9LFxuKTtcblxuY29uc3QgaW5zdHJ1bWVudE90ZWxIdHRwID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShJTlRFR1JBVElPTl9OQU1FLCBjb25maWcgPT4ge1xuICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSBuZXcgaW5zdHJ1bWVudGF0aW9uSHR0cC5IdHRwSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAuLi5jb25maWcsXG4gICAgLy8gVGhpcyBpcyBoYXJkLWNvZGVkIGFuZCBjYW4gbmV2ZXIgYmUgb3ZlcnJpZGRlbiBieSB0aGUgdXNlclxuICAgIGRpc2FibGVJbmNvbWluZ1JlcXVlc3RJbnN0cnVtZW50YXRpb246IHRydWUsXG4gIH0pO1xuXG4gIC8vIFdlIHdhbnQgdG8gdXBkYXRlIHRoZSBsb2dnZXIgbmFtZXNwYWNlIHNvIHdlIGNhbiBiZXR0ZXIgaWRlbnRpZnkgd2hhdCBpcyBoYXBwZW5pbmcgaGVyZVxuICB0cnkge1xuICAgIGluc3RydW1lbnRhdGlvblsnX2RpYWcnXSA9IGFwaS5kaWFnLmNyZWF0ZUNvbXBvbmVudExvZ2dlcih7XG4gICAgICBuYW1lc3BhY2U6IElOU1RSVU1FTlRBVElPTl9OQU1FLFxuICAgIH0pO1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgV2UgYXJlIHdyaXRpbmcgYSByZWFkLW9ubHkgcHJvcGVydHkgaGVyZS4uLlxuICAgIGluc3RydW1lbnRhdGlvbi5pbnN0cnVtZW50YXRpb25OYW1lID0gSU5TVFJVTUVOVEFUSU9OX05BTUU7XG4gIH0gY2F0Y2gge1xuICAgIC8vIGlnbm9yZSBlcnJvcnMgaGVyZS4uLlxuICB9XG5cbiAgLy8gVGhlIE9UZWwgSHR0cEluc3RydW1lbnRhdGlvbiAoPj0wLjIxMy4wKSBoYXMgYSBndWFyZCAoYF9odHRwUGF0Y2hlZGAvYF9odHRwc1BhdGNoZWRgKVxuICAvLyB0aGF0IHByZXZlbnRzIHBhdGNoaW5nIGBodHRwYC9gaHR0cHNgIHdoZW4gbG9hZGVkIGJ5IGJvdGggQ0pTIGByZXF1aXJlKClgIGFuZCBFU00gYGltcG9ydGAuXG4gIC8vIEluIGVudmlyb25tZW50cyBsaWtlIEFXUyBMYW1iZGEsIHRoZSBydW50aW1lIGxvYWRzIGBodHRwYCB2aWEgQ0pTIGZpcnN0IChmb3IgdGhlIFJ1bnRpbWUgQVBJKSxcbiAgLy8gYW5kIHRoZW4gdGhlIHVzZXIncyBFU00gaGFuZGxlciBpbXBvcnRzIGBub2RlOmh0dHBgLiBUaGUgZ3VhcmQgYmxvY2tzIEVTTSBwYXRjaGluZyBhZnRlciBDSlMsXG4gIC8vIHdoaWNoIGJyZWFrcyBIVFRQIHNwYW5zIGZvciBFU00gaGFuZGxlcnMuIFdlIGRpc2FibGUgdGhpcyBndWFyZCB0byBhbGxvdyBib3RoIHRvIGJlIHBhdGNoZWQuXG4gIC8vIFRPRE8oYW5kcmVpKTogUmVtb3ZlIG9uY2UgaHR0cHM6Ly9naXRodWIuY29tL29wZW4tdGVsZW1ldHJ5L29wZW50ZWxlbWV0cnktanMvaXNzdWVzLzY0ODkgaXMgZml4ZWQuXG4gIHRyeSB7XG4gICAgY29uc3Qgbm9vcERlc2NyaXB0b3IgPSB7IGdldDogKCkgPT4gZmFsc2UsIHNldDogKCkgPT4ge30gfTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoaW5zdHJ1bWVudGF0aW9uLCAnX2h0dHBQYXRjaGVkJywgbm9vcERlc2NyaXB0b3IpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShpbnN0cnVtZW50YXRpb24sICdfaHR0cHNQYXRjaGVkJywgbm9vcERlc2NyaXB0b3IpO1xuICB9IGNhdGNoIHtcbiAgICAvLyBpZ25vcmUgZXJyb3JzIGhlcmUuLi5cbiAgfVxuXG4gIHJldHVybiBpbnN0cnVtZW50YXRpb247XG59KTtcblxuLyoqIEV4cG9ydGVkIG9ubHkgZm9yIHRlc3RzLiAqL1xuZnVuY3Rpb24gX3Nob3VsZFVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uKFxuICBvcHRpb25zLFxuICBjbGllbnRPcHRpb25zID0ge30sXG4pIHtcbiAgLy8gSWYgYHNwYW5zYCBpcyBwYXNzZWQgaW4sIGl0IHRha2VzIHByZWNlZGVuY2VcbiAgLy8gRWxzZSwgd2UgYnkgZGVmYXVsdCBlbWl0IHNwYW5zLCB1bmxlc3MgYHNraXBPcGVuVGVsZW1ldHJ5U2V0dXBgIGlzIHNldCB0byBgdHJ1ZWAgb3Igc3BhbnMgYXJlIG5vdCBlbmFibGVkXG4gIGlmICh0eXBlb2Ygb3B0aW9ucy5zcGFucyA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuc3BhbnM7XG4gIH1cblxuICBpZiAoY2xpZW50T3B0aW9ucy5za2lwT3BlblRlbGVtZXRyeVNldHVwKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gSU1QT1JUQU5UOiBXZSBvbmx5IGRpc2FibGUgc3BhbiBpbnN0cnVtZW50YXRpb24gd2hlbiBzcGFucyBhcmUgbm90IGVuYWJsZWQgX2FuZF8gd2UgYXJlIG9uIGEgTm9kZSB2ZXJzaW9uXG4gIC8vIHRoYXQgZnVsbHkgc3VwcG9ydHMgdGhlIG5lY2Vzc2FyeSBkaWFnbm9zdGljcyBjaGFubmVscyBmb3IgdHJhY2UgcHJvcGFnYXRpb25cbiAgaWYgKCFjb3JlLmhhc1NwYW5zRW5hYmxlZChjbGllbnRPcHRpb25zKSAmJiBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBUaGUgaHR0cCBpbnRlZ3JhdGlvbiBpbnN0cnVtZW50cyBOb2RlJ3MgaW50ZXJuYWwgaHR0cCBhbmQgaHR0cHMgbW9kdWxlcy5cbiAqIEl0IGNyZWF0ZXMgYnJlYWRjcnVtYnMgYW5kIHNwYW5zIGZvciBvdXRnb2luZyBIVFRQIHJlcXVlc3RzIHdoaWNoIHdpbGwgYmUgYXR0YWNoZWQgdG8gdGhlIGN1cnJlbnRseSBhY3RpdmUgc3Bhbi5cbiAqL1xuY29uc3QgaHR0cEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbigob3B0aW9ucyA9IHt9KSA9PiB7XG4gIGNvbnN0IHNwYW5zID0gb3B0aW9ucy5zcGFucyA/PyB0cnVlO1xuICBjb25zdCBkaXNhYmxlSW5jb21pbmdSZXF1ZXN0U3BhbnMgPSBvcHRpb25zLmRpc2FibGVJbmNvbWluZ1JlcXVlc3RTcGFucztcblxuICBjb25zdCBzZXJ2ZXJPcHRpb25zID0ge1xuICAgIHNlc3Npb25zOiBvcHRpb25zLnRyYWNrSW5jb21pbmdSZXF1ZXN0c0FzU2Vzc2lvbnMsXG4gICAgc2Vzc2lvbkZsdXNoaW5nRGVsYXlNUzogb3B0aW9ucy5zZXNzaW9uRmx1c2hpbmdEZWxheU1TLFxuICAgIGlnbm9yZVJlcXVlc3RCb2R5OiBvcHRpb25zLmlnbm9yZUluY29taW5nUmVxdWVzdEJvZHksXG4gICAgbWF4UmVxdWVzdEJvZHlTaXplOiBvcHRpb25zLm1heEluY29taW5nUmVxdWVzdEJvZHlTaXplLFxuICB9IDtcblxuICBjb25zdCBzZXJ2ZXJTcGFuc09wdGlvbnMgPSB7XG4gICAgaWdub3JlSW5jb21pbmdSZXF1ZXN0czogb3B0aW9ucy5pZ25vcmVJbmNvbWluZ1JlcXVlc3RzLFxuICAgIGlnbm9yZVN0YXRpY0Fzc2V0czogb3B0aW9ucy5pZ25vcmVTdGF0aWNBc3NldHMsXG4gICAgaWdub3JlU3RhdHVzQ29kZXM6IG9wdGlvbnMuZHJvcFNwYW5zRm9ySW5jb21pbmdSZXF1ZXN0U3RhdHVzQ29kZXMsXG4gICAgaW5zdHJ1bWVudGF0aW9uOiBvcHRpb25zLmluc3RydW1lbnRhdGlvbixcbiAgICBvblNwYW5DcmVhdGVkOiBvcHRpb25zLmluY29taW5nUmVxdWVzdFNwYW5Ib29rLFxuICB9IDtcblxuICBjb25zdCBzZXJ2ZXIgPSBub2RlQ29yZS5odHRwU2VydmVySW50ZWdyYXRpb24oc2VydmVyT3B0aW9ucyk7XG4gIGNvbnN0IHNlcnZlclNwYW5zID0gbm9kZUNvcmUuaHR0cFNlcnZlclNwYW5zSW50ZWdyYXRpb24oc2VydmVyU3BhbnNPcHRpb25zKTtcblxuICBjb25zdCBlbmFibGVTZXJ2ZXJTcGFucyA9IHNwYW5zICYmICFkaXNhYmxlSW5jb21pbmdSZXF1ZXN0U3BhbnM7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwKGNsaWVudCkge1xuICAgICAgY29uc3QgY2xpZW50T3B0aW9ucyA9IGNsaWVudC5nZXRPcHRpb25zKCk7XG5cbiAgICAgIGlmIChlbmFibGVTZXJ2ZXJTcGFucyAmJiBjb3JlLmhhc1NwYW5zRW5hYmxlZChjbGllbnRPcHRpb25zKSkge1xuICAgICAgICBzZXJ2ZXJTcGFucy5zZXR1cChjbGllbnQpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgY29uc3QgY2xpZW50T3B0aW9ucyA9IChjb3JlLmdldENsaWVudCgpPy5nZXRPcHRpb25zKCkgfHwge30pIDtcbiAgICAgIGNvbnN0IHVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uID0gX3Nob3VsZFVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMsIGNsaWVudE9wdGlvbnMpO1xuXG4gICAgICBzZXJ2ZXIuc2V0dXBPbmNlKCk7XG5cbiAgICAgIGNvbnN0IHNlbnRyeUh0dHBJbnN0cnVtZW50YXRpb25PcHRpb25zID0ge1xuICAgICAgICBicmVhZGNydW1iczogb3B0aW9ucy5icmVhZGNydW1icyxcbiAgICAgICAgcHJvcGFnYXRlVHJhY2VJbk91dGdvaW5nUmVxdWVzdHM6XG4gICAgICAgICAgdHlwZW9mIG9wdGlvbnMudHJhY2VQcm9wYWdhdGlvbiA9PT0gJ2Jvb2xlYW4nXG4gICAgICAgICAgICA/IG9wdGlvbnMudHJhY2VQcm9wYWdhdGlvblxuICAgICAgICAgICAgOiBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwgfHwgIXVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uLFxuICAgICAgICBjcmVhdGVTcGFuc0Zvck91dGdvaW5nUmVxdWVzdHM6IEZVTExZX1NVUFBPUlRTX0hUVFBfRElBR05PU1RJQ1NfQ0hBTk5FTCxcbiAgICAgICAgc3BhbnM6IG9wdGlvbnMuc3BhbnMsXG4gICAgICAgIGlnbm9yZU91dGdvaW5nUmVxdWVzdHM6IG9wdGlvbnMuaWdub3JlT3V0Z29pbmdSZXF1ZXN0cyxcbiAgICAgICAgb3V0Z29pbmdSZXF1ZXN0SG9vazogKHNwYW4sIHJlcXVlc3QpID0+IHtcbiAgICAgICAgICAvLyBTYW5pdGl6ZSBkYXRhIFVSTHMgdG8gcHJldmVudCBsb25nIGJhc2U2NCBzdHJpbmdzIGluIHNwYW4gYXR0cmlidXRlc1xuICAgICAgICAgIGNvbnN0IHVybCA9IG5vZGVDb3JlLmdldFJlcXVlc3RVcmwocmVxdWVzdCk7XG4gICAgICAgICAgaWYgKHVybC5zdGFydHNXaXRoKCdkYXRhOicpKSB7XG4gICAgICAgICAgICBjb25zdCBzYW5pdGl6ZWRVcmwgPSBjb3JlLnN0cmlwRGF0YVVybENvbnRlbnQodXJsKTtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKCdodHRwLnVybCcsIHNhbml0aXplZFVybCk7XG4gICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9VUkxfRlVMTCwgc2FuaXRpemVkVXJsKTtcbiAgICAgICAgICAgIHNwYW4udXBkYXRlTmFtZShgJHtyZXF1ZXN0Lm1ldGhvZCB8fCAnR0VUJ30gJHtzYW5pdGl6ZWRVcmx9YCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgb3B0aW9ucy5pbnN0cnVtZW50YXRpb24/LnJlcXVlc3RIb29rPy4oc3BhbiwgcmVxdWVzdCk7XG4gICAgICAgIH0sXG4gICAgICAgIG91dGdvaW5nUmVzcG9uc2VIb29rOiBvcHRpb25zLmluc3RydW1lbnRhdGlvbj8ucmVzcG9uc2VIb29rLFxuICAgICAgICBvdXRnb2luZ1JlcXVlc3RBcHBseUN1c3RvbUF0dHJpYnV0ZXM6IG9wdGlvbnMuaW5zdHJ1bWVudGF0aW9uPy5hcHBseUN1c3RvbUF0dHJpYnV0ZXNPblNwYW4sXG4gICAgICB9IDtcblxuICAgICAgLy8gVGhpcyBpcyBTZW50cnktc3BlY2lmaWMgaW5zdHJ1bWVudGF0aW9uIGZvciBvdXRnb2luZyByZXF1ZXN0IGJyZWFkY3J1bWJzICYgdHJhY2UgcHJvcGFnYXRpb25cbiAgICAgIGluc3RydW1lbnRTZW50cnlIdHRwKHNlbnRyeUh0dHBJbnN0cnVtZW50YXRpb25PcHRpb25zKTtcblxuICAgICAgLy8gVGhpcyBpcyB0aGUgXCJyZWd1bGFyXCIgT1RFTCBpbnN0cnVtZW50YXRpb24gdGhhdCBlbWl0cyBvdXRnb2luZyByZXF1ZXN0IHNwYW5zXG4gICAgICBpZiAodXNlT3RlbEh0dHBJbnN0cnVtZW50YXRpb24pIHtcbiAgICAgICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uQ29uZmlnID0gZ2V0Q29uZmlnV2l0aERlZmF1bHRzKG9wdGlvbnMpO1xuICAgICAgICBpbnN0cnVtZW50T3RlbEh0dHAoaW5zdHJ1bWVudGF0aW9uQ29uZmlnKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHByb2Nlc3NFdmVudChldmVudCkge1xuICAgICAgLy8gTm90ZTogV2UgYWx3YXlzIHJ1biB0aGlzLCBldmVuIGlmIHNwYW5zIGFyZSBkaXNhYmxlZFxuICAgICAgLy8gVGhlIHJlYXNvbiBiZWluZyB0aGF0IGUuZy4gdGhlIHJlbWl4IGludGVncmF0aW9uIGRpc2FibGVzIHNwYW4gY3JlYXRpb24gaGVyZSBidXQgc3RpbGwgd2FudHMgdG8gdXNlIHRoZSBpZ25vcmUgc3RhdHVzIGNvZGVzIG9wdGlvblxuICAgICAgcmV0dXJuIHNlcnZlclNwYW5zLnByb2Nlc3NFdmVudChldmVudCk7XG4gICAgfSxcbiAgfTtcbn0pO1xuXG5mdW5jdGlvbiBnZXRDb25maWdXaXRoRGVmYXVsdHMob3B0aW9ucyA9IHt9KSB7XG4gIGNvbnN0IGluc3RydW1lbnRhdGlvbkNvbmZpZyA9IHtcbiAgICAvLyBUaGlzIGlzIGhhbmRsZWQgYnkgdGhlIFNlbnRyeUh0dHBJbnN0cnVtZW50YXRpb24gb24gTm9kZSAyMitcbiAgICBkaXNhYmxlT3V0Z29pbmdSZXF1ZXN0SW5zdHJ1bWVudGF0aW9uOiBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwsXG5cbiAgICBpZ25vcmVPdXRnb2luZ1JlcXVlc3RIb29rOiByZXF1ZXN0ID0+IHtcbiAgICAgIGNvbnN0IHVybCA9IG5vZGVDb3JlLmdldFJlcXVlc3RVcmwocmVxdWVzdCk7XG5cbiAgICAgIGlmICghdXJsKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgX2lnbm9yZU91dGdvaW5nUmVxdWVzdHMgPSBvcHRpb25zLmlnbm9yZU91dGdvaW5nUmVxdWVzdHM7XG4gICAgICBpZiAoX2lnbm9yZU91dGdvaW5nUmVxdWVzdHM/Lih1cmwsIHJlcXVlc3QpKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSxcblxuICAgIHJlcXVpcmVQYXJlbnRmb3JPdXRnb2luZ1NwYW5zOiBmYWxzZSxcbiAgICByZXF1ZXN0SG9vazogKHNwYW4sIHJlcSkgPT4ge1xuICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmh0dHAub3RlbC5odHRwJyk7XG5cbiAgICAgIC8vIFNhbml0aXplIGRhdGEgVVJMcyB0byBwcmV2ZW50IGxvbmcgYmFzZTY0IHN0cmluZ3MgaW4gc3BhbiBhdHRyaWJ1dGVzXG4gICAgICBjb25zdCB1cmwgPSBub2RlQ29yZS5nZXRSZXF1ZXN0VXJsKHJlcSApO1xuICAgICAgaWYgKHVybC5zdGFydHNXaXRoKCdkYXRhOicpKSB7XG4gICAgICAgIGNvbnN0IHNhbml0aXplZFVybCA9IGNvcmUuc3RyaXBEYXRhVXJsQ29udGVudCh1cmwpO1xuICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnaHR0cC51cmwnLCBzYW5pdGl6ZWRVcmwpO1xuICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9VUkxfRlVMTCwgc2FuaXRpemVkVXJsKTtcbiAgICAgICAgc3Bhbi51cGRhdGVOYW1lKGAkeyhyZXEgKS5tZXRob2QgfHwgJ0dFVCd9ICR7c2FuaXRpemVkVXJsfWApO1xuICAgICAgfVxuXG4gICAgICBvcHRpb25zLmluc3RydW1lbnRhdGlvbj8ucmVxdWVzdEhvb2s/LihzcGFuLCByZXEpO1xuICAgIH0sXG4gICAgcmVzcG9uc2VIb29rOiAoc3BhbiwgcmVzKSA9PiB7XG4gICAgICBvcHRpb25zLmluc3RydW1lbnRhdGlvbj8ucmVzcG9uc2VIb29rPy4oc3BhbiwgcmVzKTtcbiAgICB9LFxuICAgIGFwcGx5Q3VzdG9tQXR0cmlidXRlc09uU3BhbjogKFxuICAgICAgc3BhbixcbiAgICAgIHJlcXVlc3QsXG4gICAgICByZXNwb25zZSxcbiAgICApID0+IHtcbiAgICAgIG9wdGlvbnMuaW5zdHJ1bWVudGF0aW9uPy5hcHBseUN1c3RvbUF0dHJpYnV0ZXNPblNwYW4/LihzcGFuLCByZXF1ZXN0LCByZXNwb25zZSk7XG4gICAgfSxcbiAgfSA7XG5cbiAgcmV0dXJuIGluc3RydW1lbnRhdGlvbkNvbmZpZztcbn1cblxuZXhwb3J0cy5fc2hvdWxkVXNlT3RlbEh0dHBJbnN0cnVtZW50YXRpb24gPSBfc2hvdWxkVXNlT3RlbEh0dHBJbnN0cnVtZW50YXRpb247XG5leHBvcnRzLmh0dHBJbnRlZ3JhdGlvbiA9IGh0dHBJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudE90ZWxIdHRwID0gaW5zdHJ1bWVudE90ZWxIdHRwO1xuZXhwb3J0cy5pbnN0cnVtZW50U2VudHJ5SHR0cCA9IGluc3RydW1lbnRTZW50cnlIdHRwO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aHR0cC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationUndici = __webpack_require__(/*! @opentelemetry/instrumentation-undici */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-undici@0.24.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-undici/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'NodeFetch';\n\nconst instrumentOtelNodeFetch = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationUndici.UndiciInstrumentation,\n (options) => {\n return _getConfigWithDefaults(options);\n },\n);\n\nconst instrumentSentryNodeFetch = nodeCore.generateInstrumentOnce(\n `${INTEGRATION_NAME}.sentry`,\n nodeCore.SentryNodeFetchInstrumentation,\n (options) => {\n return options;\n },\n);\n\nconst _nativeNodeFetchIntegration = ((options = {}) => {\n return {\n name: 'NodeFetch',\n setupOnce() {\n const instrumentSpans = _shouldInstrumentSpans(options, core.getClient()?.getOptions());\n\n // This is the \"regular\" OTEL instrumentation that emits spans\n if (instrumentSpans) {\n instrumentOtelNodeFetch(options);\n }\n\n // This is the Sentry-specific instrumentation that creates breadcrumbs & propagates traces\n // This must be registered after the OTEL one, to ensure that the core trace propagation logic takes presedence\n // Otherwise, the sentry-trace header may be set multiple times\n instrumentSentryNodeFetch(options);\n },\n };\n}) ;\n\nconst nativeNodeFetchIntegration = core.defineIntegration(_nativeNodeFetchIntegration);\n\n// Matching the behavior of the base instrumentation\nfunction getAbsoluteUrl(origin, path = '/') {\n const url = `${origin}`;\n\n if (url.endsWith('/') && path.startsWith('/')) {\n return `${url}${path.slice(1)}`;\n }\n\n if (!url.endsWith('/') && !path.startsWith('/')) {\n return `${url}/${path}`;\n }\n\n return `${url}${path}`;\n}\n\nfunction _shouldInstrumentSpans(options, clientOptions = {}) {\n // If `spans` is passed in, it takes precedence\n // Else, we by default emit spans, unless `skipOpenTelemetrySetup` is set to `true` or spans are not enabled\n return typeof options.spans === 'boolean'\n ? options.spans\n : !clientOptions.skipOpenTelemetrySetup && core.hasSpansEnabled(clientOptions);\n}\n\n/** Exported only for tests. */\nfunction _getConfigWithDefaults(options = {}) {\n const instrumentationConfig = {\n requireParentforSpans: false,\n ignoreRequestHook: request => {\n const url = getAbsoluteUrl(request.origin, request.path);\n const _ignoreOutgoingRequests = options.ignoreOutgoingRequests;\n const shouldIgnore = _ignoreOutgoingRequests && url && _ignoreOutgoingRequests(url);\n\n return !!shouldIgnore;\n },\n startSpanHook: request => {\n const url = getAbsoluteUrl(request.origin, request.path);\n\n // Sanitize data URLs to prevent long base64 strings in span attributes\n if (url.startsWith('data:')) {\n const sanitizedUrl = core.stripDataUrlContent(url);\n return {\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.node_fetch',\n 'http.url': sanitizedUrl,\n [core.SEMANTIC_ATTRIBUTE_URL_FULL]: sanitizedUrl,\n [core.SEMANTIC_ATTRIBUTE_SENTRY_CUSTOM_SPAN_NAME]: `${request.method || 'GET'} ${sanitizedUrl}`,\n };\n }\n\n return {\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.node_fetch',\n };\n },\n requestHook: options.requestHook,\n responseHook: options.responseHook,\n headersToSpanAttributes: options.headersToSpanAttributes,\n } ;\n\n return instrumentationConfig;\n}\n\nexports._getConfigWithDefaults = _getConfigWithDefaults;\nexports.nativeNodeFetchIntegration = nativeNodeFetchIntegration;\n//# sourceMappingURL=node-fetch.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL25vZGUtZmV0Y2guanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsOEJBQThCLG1CQUFPLENBQUMscU5BQXVDO0FBQzdFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQSxLQUFLLGlCQUFpQjtBQUN0QjtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUEsa0RBQWtEO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDs7QUFFQTtBQUNBO0FBQ0EsaUJBQWlCLE9BQU87O0FBRXhCO0FBQ0EsY0FBYyxJQUFJLEVBQUUsY0FBYztBQUNsQzs7QUFFQTtBQUNBLGNBQWMsSUFBSSxHQUFHLEtBQUs7QUFDMUI7O0FBRUEsWUFBWSxJQUFJLEVBQUUsS0FBSztBQUN2Qjs7QUFFQSwyREFBMkQ7QUFDM0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNENBQTRDO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0VBQWdFLHlCQUF5QixFQUFFLGFBQWE7QUFDeEc7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSw4QkFBOEI7QUFDOUIsa0NBQWtDO0FBQ2xDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy9ub2RlLWZldGNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25VbmRpY2kgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tdW5kaWNpJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnTm9kZUZldGNoJztcblxuY29uc3QgaW5zdHJ1bWVudE90ZWxOb2RlRmV0Y2ggPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICBpbnN0cnVtZW50YXRpb25VbmRpY2kuVW5kaWNpSW5zdHJ1bWVudGF0aW9uLFxuICAob3B0aW9ucykgPT4ge1xuICAgIHJldHVybiBfZ2V0Q29uZmlnV2l0aERlZmF1bHRzKG9wdGlvbnMpO1xuICB9LFxuKTtcblxuY29uc3QgaW5zdHJ1bWVudFNlbnRyeU5vZGVGZXRjaCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIGAke0lOVEVHUkFUSU9OX05BTUV9LnNlbnRyeWAsXG4gIG5vZGVDb3JlLlNlbnRyeU5vZGVGZXRjaEluc3RydW1lbnRhdGlvbixcbiAgKG9wdGlvbnMpID0+IHtcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfSxcbik7XG5cbmNvbnN0IF9uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ05vZGVGZXRjaCcsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgY29uc3QgaW5zdHJ1bWVudFNwYW5zID0gX3Nob3VsZEluc3RydW1lbnRTcGFucyhvcHRpb25zLCBjb3JlLmdldENsaWVudCgpPy5nZXRPcHRpb25zKCkpO1xuXG4gICAgICAvLyBUaGlzIGlzIHRoZSBcInJlZ3VsYXJcIiBPVEVMIGluc3RydW1lbnRhdGlvbiB0aGF0IGVtaXRzIHNwYW5zXG4gICAgICBpZiAoaW5zdHJ1bWVudFNwYW5zKSB7XG4gICAgICAgIGluc3RydW1lbnRPdGVsTm9kZUZldGNoKG9wdGlvbnMpO1xuICAgICAgfVxuXG4gICAgICAvLyBUaGlzIGlzIHRoZSBTZW50cnktc3BlY2lmaWMgaW5zdHJ1bWVudGF0aW9uIHRoYXQgY3JlYXRlcyBicmVhZGNydW1icyAmIHByb3BhZ2F0ZXMgdHJhY2VzXG4gICAgICAvLyBUaGlzIG11c3QgYmUgcmVnaXN0ZXJlZCBhZnRlciB0aGUgT1RFTCBvbmUsIHRvIGVuc3VyZSB0aGF0IHRoZSBjb3JlIHRyYWNlIHByb3BhZ2F0aW9uIGxvZ2ljIHRha2VzIHByZXNlZGVuY2VcbiAgICAgIC8vIE90aGVyd2lzZSwgdGhlIHNlbnRyeS10cmFjZSBoZWFkZXIgbWF5IGJlIHNldCBtdWx0aXBsZSB0aW1lc1xuICAgICAgaW5zdHJ1bWVudFNlbnRyeU5vZGVGZXRjaChvcHRpb25zKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG5jb25zdCBuYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX25hdGl2ZU5vZGVGZXRjaEludGVncmF0aW9uKTtcblxuLy8gTWF0Y2hpbmcgdGhlIGJlaGF2aW9yIG9mIHRoZSBiYXNlIGluc3RydW1lbnRhdGlvblxuZnVuY3Rpb24gZ2V0QWJzb2x1dGVVcmwob3JpZ2luLCBwYXRoID0gJy8nKSB7XG4gIGNvbnN0IHVybCA9IGAke29yaWdpbn1gO1xuXG4gIGlmICh1cmwuZW5kc1dpdGgoJy8nKSAmJiBwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgIHJldHVybiBgJHt1cmx9JHtwYXRoLnNsaWNlKDEpfWA7XG4gIH1cblxuICBpZiAoIXVybC5lbmRzV2l0aCgnLycpICYmICFwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgIHJldHVybiBgJHt1cmx9LyR7cGF0aH1gO1xuICB9XG5cbiAgcmV0dXJuIGAke3VybH0ke3BhdGh9YDtcbn1cblxuZnVuY3Rpb24gX3Nob3VsZEluc3RydW1lbnRTcGFucyhvcHRpb25zLCBjbGllbnRPcHRpb25zID0ge30pIHtcbiAgLy8gSWYgYHNwYW5zYCBpcyBwYXNzZWQgaW4sIGl0IHRha2VzIHByZWNlZGVuY2VcbiAgLy8gRWxzZSwgd2UgYnkgZGVmYXVsdCBlbWl0IHNwYW5zLCB1bmxlc3MgYHNraXBPcGVuVGVsZW1ldHJ5U2V0dXBgIGlzIHNldCB0byBgdHJ1ZWAgb3Igc3BhbnMgYXJlIG5vdCBlbmFibGVkXG4gIHJldHVybiB0eXBlb2Ygb3B0aW9ucy5zcGFucyA9PT0gJ2Jvb2xlYW4nXG4gICAgPyBvcHRpb25zLnNwYW5zXG4gICAgOiAhY2xpZW50T3B0aW9ucy5za2lwT3BlblRlbGVtZXRyeVNldHVwICYmIGNvcmUuaGFzU3BhbnNFbmFibGVkKGNsaWVudE9wdGlvbnMpO1xufVxuXG4vKiogRXhwb3J0ZWQgb25seSBmb3IgdGVzdHMuICovXG5mdW5jdGlvbiBfZ2V0Q29uZmlnV2l0aERlZmF1bHRzKG9wdGlvbnMgPSB7fSkge1xuICBjb25zdCBpbnN0cnVtZW50YXRpb25Db25maWcgPSB7XG4gICAgcmVxdWlyZVBhcmVudGZvclNwYW5zOiBmYWxzZSxcbiAgICBpZ25vcmVSZXF1ZXN0SG9vazogcmVxdWVzdCA9PiB7XG4gICAgICBjb25zdCB1cmwgPSBnZXRBYnNvbHV0ZVVybChyZXF1ZXN0Lm9yaWdpbiwgcmVxdWVzdC5wYXRoKTtcbiAgICAgIGNvbnN0IF9pZ25vcmVPdXRnb2luZ1JlcXVlc3RzID0gb3B0aW9ucy5pZ25vcmVPdXRnb2luZ1JlcXVlc3RzO1xuICAgICAgY29uc3Qgc2hvdWxkSWdub3JlID0gX2lnbm9yZU91dGdvaW5nUmVxdWVzdHMgJiYgdXJsICYmIF9pZ25vcmVPdXRnb2luZ1JlcXVlc3RzKHVybCk7XG5cbiAgICAgIHJldHVybiAhIXNob3VsZElnbm9yZTtcbiAgICB9LFxuICAgIHN0YXJ0U3Bhbkhvb2s6IHJlcXVlc3QgPT4ge1xuICAgICAgY29uc3QgdXJsID0gZ2V0QWJzb2x1dGVVcmwocmVxdWVzdC5vcmlnaW4sIHJlcXVlc3QucGF0aCk7XG5cbiAgICAgIC8vIFNhbml0aXplIGRhdGEgVVJMcyB0byBwcmV2ZW50IGxvbmcgYmFzZTY0IHN0cmluZ3MgaW4gc3BhbiBhdHRyaWJ1dGVzXG4gICAgICBpZiAodXJsLnN0YXJ0c1dpdGgoJ2RhdGE6JykpIHtcbiAgICAgICAgY29uc3Qgc2FuaXRpemVkVXJsID0gY29yZS5zdHJpcERhdGFVcmxDb250ZW50KHVybCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU5dOiAnYXV0by5odHRwLm90ZWwubm9kZV9mZXRjaCcsXG4gICAgICAgICAgJ2h0dHAudXJsJzogc2FuaXRpemVkVXJsLFxuICAgICAgICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9VUkxfRlVMTF06IHNhbml0aXplZFVybCxcbiAgICAgICAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX0NVU1RPTV9TUEFOX05BTUVdOiBgJHtyZXF1ZXN0Lm1ldGhvZCB8fCAnR0VUJ30gJHtzYW5pdGl6ZWRVcmx9YCxcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU5dOiAnYXV0by5odHRwLm90ZWwubm9kZV9mZXRjaCcsXG4gICAgICB9O1xuICAgIH0sXG4gICAgcmVxdWVzdEhvb2s6IG9wdGlvbnMucmVxdWVzdEhvb2ssXG4gICAgcmVzcG9uc2VIb29rOiBvcHRpb25zLnJlc3BvbnNlSG9vayxcbiAgICBoZWFkZXJzVG9TcGFuQXR0cmlidXRlczogb3B0aW9ucy5oZWFkZXJzVG9TcGFuQXR0cmlidXRlcyxcbiAgfSA7XG5cbiAgcmV0dXJuIGluc3RydW1lbnRhdGlvbkNvbmZpZztcbn1cblxuZXhwb3J0cy5fZ2V0Q29uZmlnV2l0aERlZmF1bHRzID0gX2dldENvbmZpZ1dpdGhEZWZhdWx0cztcbmV4cG9ydHMubmF0aXZlTm9kZUZldGNoSW50ZWdyYXRpb24gPSBuYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW5vZGUtZmV0Y2guanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationAmqplib = __webpack_require__(/*! @opentelemetry/instrumentation-amqplib */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-amqplib@0.61.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-amqplib/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Amqplib';\n\nconst config = {\n consumeEndHook: (span) => {\n nodeCore.addOriginToSpan(span, 'auto.amqplib.otel.consumer');\n },\n publishHook: (span) => {\n nodeCore.addOriginToSpan(span, 'auto.amqplib.otel.publisher');\n },\n};\n\nconst instrumentAmqplib = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationAmqplib.AmqplibInstrumentation(config));\n\nconst _amqplibIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentAmqplib();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [amqplib](https://www.npmjs.com/package/amqplib) library.\n *\n * For more information, see the [`amqplibIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/amqplib/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.amqplibIntegration()],\n * });\n * ```\n */\nconst amqplibIntegration = core.defineIntegration(_amqplibIntegration);\n\nexports.amqplibIntegration = amqplibIntegration;\nexports.instrumentAmqplib = instrumentAmqplib;\n//# sourceMappingURL=amqplib.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvYW1xcGxpYi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEsMEJBQTBCO0FBQzFCLHlCQUF5QjtBQUN6QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9hbXFwbGliLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25BbXFwbGliID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWFtcXBsaWInKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdBbXFwbGliJztcblxuY29uc3QgY29uZmlnID0ge1xuICBjb25zdW1lRW5kSG9vazogKHNwYW4pID0+IHtcbiAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uYW1xcGxpYi5vdGVsLmNvbnN1bWVyJyk7XG4gIH0sXG4gIHB1Ymxpc2hIb29rOiAoc3BhbikgPT4ge1xuICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5hbXFwbGliLm90ZWwucHVibGlzaGVyJyk7XG4gIH0sXG59O1xuXG5jb25zdCBpbnN0cnVtZW50QW1xcGxpYiA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkFtcXBsaWIuQW1xcGxpYkluc3RydW1lbnRhdGlvbihjb25maWcpKTtcblxuY29uc3QgX2FtcXBsaWJJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50QW1xcGxpYigpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbYW1xcGxpYl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvYW1xcGxpYikgbGlicmFyeS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYGFtcXBsaWJJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9hbXFwbGliLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuYW1xcGxpYkludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgYW1xcGxpYkludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfYW1xcGxpYkludGVncmF0aW9uKTtcblxuZXhwb3J0cy5hbXFwbGliSW50ZWdyYXRpb24gPSBhbXFwbGliSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRBbXFwbGliID0gaW5zdHJ1bWVudEFtcXBsaWI7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hbXFwbGliLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js ***!
\********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js\");\n\nconst instrumentAnthropicAi = nodeCore.generateInstrumentOnce(\n core.ANTHROPIC_AI_INTEGRATION_NAME,\n options => new instrumentation.SentryAnthropicAiInstrumentation(options),\n);\n\nconst _anthropicAIIntegration = ((options = {}) => {\n return {\n name: core.ANTHROPIC_AI_INTEGRATION_NAME,\n options,\n setupOnce() {\n instrumentAnthropicAi(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the Anthropic AI SDK.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments Anthropic AI SDK client instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.anthropicAIIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record prompt messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.anthropicAIIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.anthropicAIIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n */\nconst anthropicAIIntegration = core.defineIntegration(_anthropicAIIntegration);\n\nexports.anthropicAIIntegration = anthropicAIIntegration;\nexports.instrumentAnthropicAi = instrumentAnthropicAi;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvYW50aHJvcGljLWFpL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsc0tBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4Q0FBOEM7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4QkFBOEI7QUFDOUIsNkJBQTZCO0FBQzdCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2FudGhyb3BpYy1haS9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnLi9pbnN0cnVtZW50YXRpb24uanMnKTtcblxuY29uc3QgaW5zdHJ1bWVudEFudGhyb3BpY0FpID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgY29yZS5BTlRIUk9QSUNfQUlfSU5URUdSQVRJT05fTkFNRSxcbiAgb3B0aW9ucyA9PiBuZXcgaW5zdHJ1bWVudGF0aW9uLlNlbnRyeUFudGhyb3BpY0FpSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX2FudGhyb3BpY0FJSW50ZWdyYXRpb24gPSAoKG9wdGlvbnMgPSB7fSkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IGNvcmUuQU5USFJPUElDX0FJX0lOVEVHUkFUSU9OX05BTUUsXG4gICAgb3B0aW9ucyxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50QW50aHJvcGljQWkob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIEFudGhyb3BpYyBBSSBTREsuXG4gKlxuICogVGhpcyBpbnRlZ3JhdGlvbiBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuXG4gKlxuICogV2hlbiBjb25maWd1cmVkLCB0aGlzIGludGVncmF0aW9uIGF1dG9tYXRpY2FsbHkgaW5zdHJ1bWVudHMgQW50aHJvcGljIEFJIFNESyBjbGllbnQgaW5zdGFuY2VzXG4gKiB0byBjYXB0dXJlIHRlbGVtZXRyeSBkYXRhIGZvbGxvd2luZyBPcGVuVGVsZW1ldHJ5IFNlbWFudGljIENvbnZlbnRpb25zIGZvciBHZW5lcmF0aXZlIEFJLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBpbXBvcnQgKiBhcyBTZW50cnkgZnJvbSAnQHNlbnRyeS9ub2RlJztcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5hbnRocm9waWNBSUludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiAjIyBPcHRpb25zXG4gKlxuICogLSBgcmVjb3JkSW5wdXRzYDogV2hldGhlciB0byByZWNvcmQgcHJvbXB0IG1lc3NhZ2VzIChkZWZhdWx0OiByZXNwZWN0cyBgc2VuZERlZmF1bHRQaWlgIGNsaWVudCBvcHRpb24pXG4gKiAtIGByZWNvcmRPdXRwdXRzYDogV2hldGhlciB0byByZWNvcmQgcmVzcG9uc2UgdGV4dCAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICpcbiAqICMjIyBEZWZhdWx0IEJlaGF2aW9yXG4gKlxuICogQnkgZGVmYXVsdCwgdGhlIGludGVncmF0aW9uIHdpbGw6XG4gKiAtIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgT05MWSBpZiBgc2VuZERlZmF1bHRQaWlgIGlzIHNldCB0byBgdHJ1ZWAgaW4geW91ciBTZW50cnkgY2xpZW50IG9wdGlvbnNcbiAqIC0gT3RoZXJ3aXNlLCBpbnB1dHMgYW5kIG91dHB1dHMgYXJlIE5PVCByZWNvcmRlZCB1bmxlc3MgZXhwbGljaXRseSBlbmFibGVkXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIC8vIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgd2hlbiBzZW5kRGVmYXVsdFBpaSBpcyBmYWxzZVxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkuYW50aHJvcGljQUlJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IHRydWUsXG4gKiAgICAgICByZWNvcmRPdXRwdXRzOiB0cnVlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICpcbiAqIC8vIE5ldmVyIHJlY29yZCBpbnB1dHMvb3V0cHV0cyByZWdhcmRsZXNzIG9mIHNlbmREZWZhdWx0UGlpXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIHNlbmREZWZhdWx0UGlpOiB0cnVlLFxuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkuYW50aHJvcGljQUlJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IGZhbHNlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogZmFsc2VcbiAqICAgICB9KVxuICogICBdLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKi9cbmNvbnN0IGFudGhyb3BpY0FJSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9hbnRocm9waWNBSUludGVncmF0aW9uKTtcblxuZXhwb3J0cy5hbnRocm9waWNBSUludGVncmF0aW9uID0gYW50aHJvcGljQUlJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEFudGhyb3BpY0FpID0gaW5zdHJ1bWVudEFudGhyb3BpY0FpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js ***!
\******************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.19.2 <1.0.0'];\n\n/**\n * Sentry Anthropic AI instrumentation using OpenTelemetry.\n */\nclass SentryAnthropicAiInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-anthropic-ai', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n '@anthropic-ai/sdk',\n supportedVersions,\n this._patch.bind(this),\n );\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the Anthropic AI client constructor.\n */\n _patch(exports$1) {\n const Original = exports$1.Anthropic;\n\n const config = this.getConfig();\n\n const WrappedAnthropic = function ( ...args) {\n // Check if wrapping should be skipped (e.g., when LangChain is handling instrumentation)\n if (core._INTERNAL_shouldSkipAiProviderWrapping(core.ANTHROPIC_AI_INTEGRATION_NAME)) {\n return Reflect.construct(Original, args) ;\n }\n\n const instance = Reflect.construct(Original, args);\n\n return core.instrumentAnthropicAiClient(instance , config);\n } ;\n\n // Preserve static and prototype chains\n Object.setPrototypeOf(WrappedAnthropic, Original);\n Object.setPrototypeOf(WrappedAnthropic.prototype, Original.prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedAnthropic, key, descriptor);\n }\n }\n }\n\n // Constructor replacement - handle read-only properties\n // The Anthropic property might have only a getter, so use defineProperty\n try {\n exports$1.Anthropic = WrappedAnthropic;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, 'Anthropic', {\n value: WrappedAnthropic,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n\n // Wrap the default export if it points to the original constructor\n // Constructor replacement - handle read-only properties\n // The Anthropic property might have only a getter, so use defineProperty\n if (exports$1.default === Original) {\n try {\n exports$1.default = WrappedAnthropic;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, 'default', {\n value: WrappedAnthropic,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n }\n return exports$1;\n }\n}\n\nexports.SentryAnthropicAiInstrumentation = SentryAnthropicAiInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvYW50aHJvcGljLWFpL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHdDQUF3QztBQUN4QyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9hbnRocm9waWMtYWkvaW5zdHJ1bWVudGF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVzVHVubmVsUGF0aFwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiU0VOVFJZX1JFTEVBU0VcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlCYXNlUGF0aFwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeU5leHRKc1ZlcnNpb25cIl0gPSBcIjE2LjEuNlwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZUZyYW1lc0Rpc3REaXJcIl0gPSBcIi5uZXh0XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlWZXJjZWxDcm9uc0NvbmZpZ1wiXSA9IHVuZGVmaW5lZDtPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5cbmNvbnN0IHN1cHBvcnRlZFZlcnNpb25zID0gWyc+PTAuMTkuMiA8MS4wLjAnXTtcblxuLyoqXG4gKiBTZW50cnkgQW50aHJvcGljIEFJIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlBbnRocm9waWNBaUluc3RydW1lbnRhdGlvbiBleHRlbmRzIGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25CYXNlIHtcbiAgIGNvbnN0cnVjdG9yKGNvbmZpZyA9IHt9KSB7XG4gICAgc3VwZXIoJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWFudGhyb3BpYy1haScsIGNvcmUuU0RLX1ZFUlNJT04sIGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgdGhlIGluc3RydW1lbnRhdGlvbiBieSBkZWZpbmluZyB0aGUgbW9kdWxlcyB0byBiZSBwYXRjaGVkLlxuICAgKi9cbiAgIGluaXQoKSB7XG4gICAgY29uc3QgbW9kdWxlID0gbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRGVmaW5pdGlvbihcbiAgICAgICdAYW50aHJvcGljLWFpL3NkaycsXG4gICAgICBzdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAgIHRoaXMuX3BhdGNoLmJpbmQodGhpcyksXG4gICAgKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcmUgcGF0Y2ggbG9naWMgYXBwbHlpbmcgaW5zdHJ1bWVudGF0aW9uIHRvIHRoZSBBbnRocm9waWMgQUkgY2xpZW50IGNvbnN0cnVjdG9yLlxuICAgKi9cbiAgIF9wYXRjaChleHBvcnRzJDEpIHtcbiAgICBjb25zdCBPcmlnaW5hbCA9IGV4cG9ydHMkMS5BbnRocm9waWM7XG5cbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldENvbmZpZygpO1xuXG4gICAgY29uc3QgV3JhcHBlZEFudGhyb3BpYyA9IGZ1bmN0aW9uICggLi4uYXJncykge1xuICAgICAgLy8gQ2hlY2sgaWYgd3JhcHBpbmcgc2hvdWxkIGJlIHNraXBwZWQgKGUuZy4sIHdoZW4gTGFuZ0NoYWluIGlzIGhhbmRsaW5nIGluc3RydW1lbnRhdGlvbilcbiAgICAgIGlmIChjb3JlLl9JTlRFUk5BTF9zaG91bGRTa2lwQWlQcm92aWRlcldyYXBwaW5nKGNvcmUuQU5USFJPUElDX0FJX0lOVEVHUkFUSU9OX05BTUUpKSB7XG4gICAgICAgIHJldHVybiBSZWZsZWN0LmNvbnN0cnVjdChPcmlnaW5hbCwgYXJncykgO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBpbnN0YW5jZSA9IFJlZmxlY3QuY29uc3RydWN0KE9yaWdpbmFsLCBhcmdzKTtcblxuICAgICAgcmV0dXJuIGNvcmUuaW5zdHJ1bWVudEFudGhyb3BpY0FpQ2xpZW50KGluc3RhbmNlICwgY29uZmlnKTtcbiAgICB9IDtcblxuICAgIC8vIFByZXNlcnZlIHN0YXRpYyBhbmQgcHJvdG90eXBlIGNoYWluc1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZihXcmFwcGVkQW50aHJvcGljLCBPcmlnaW5hbCk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRBbnRocm9waWMucHJvdG90eXBlLCBPcmlnaW5hbC5wcm90b3R5cGUpO1xuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoT3JpZ2luYWwpKSB7XG4gICAgICBpZiAoIVsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10uaW5jbHVkZXMoa2V5KSkge1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihPcmlnaW5hbCwga2V5KTtcbiAgICAgICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoV3JhcHBlZEFudGhyb3BpYywga2V5LCBkZXNjcmlwdG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbnN0cnVjdG9yIHJlcGxhY2VtZW50IC0gaGFuZGxlIHJlYWQtb25seSBwcm9wZXJ0aWVzXG4gICAgLy8gVGhlIEFudGhyb3BpYyBwcm9wZXJ0eSBtaWdodCBoYXZlIG9ubHkgYSBnZXR0ZXIsIHNvIHVzZSBkZWZpbmVQcm9wZXJ0eVxuICAgIHRyeSB7XG4gICAgICBleHBvcnRzJDEuQW50aHJvcGljID0gV3JhcHBlZEFudGhyb3BpYztcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElmIGRpcmVjdCBhc3NpZ25tZW50IGZhaWxzLCBvdmVycmlkZSB0aGUgcHJvcGVydHkgZGVzY3JpcHRvclxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMkMSwgJ0FudGhyb3BpYycsIHtcbiAgICAgICAgdmFsdWU6IFdyYXBwZWRBbnRocm9waWMsXG4gICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBXcmFwIHRoZSBkZWZhdWx0IGV4cG9ydCBpZiBpdCBwb2ludHMgdG8gdGhlIG9yaWdpbmFsIGNvbnN0cnVjdG9yXG4gICAgLy8gQ29uc3RydWN0b3IgcmVwbGFjZW1lbnQgLSBoYW5kbGUgcmVhZC1vbmx5IHByb3BlcnRpZXNcbiAgICAvLyBUaGUgQW50aHJvcGljIHByb3BlcnR5IG1pZ2h0IGhhdmUgb25seSBhIGdldHRlciwgc28gdXNlIGRlZmluZVByb3BlcnR5XG4gICAgaWYgKGV4cG9ydHMkMS5kZWZhdWx0ID09PSBPcmlnaW5hbCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgZXhwb3J0cyQxLmRlZmF1bHQgPSBXcmFwcGVkQW50aHJvcGljO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIC8vIElmIGRpcmVjdCBhc3NpZ25tZW50IGZhaWxzLCBvdmVycmlkZSB0aGUgcHJvcGVydHkgZGVzY3JpcHRvclxuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cyQxLCAnZGVmYXVsdCcsIHtcbiAgICAgICAgICB2YWx1ZTogV3JhcHBlZEFudGhyb3BpYyxcbiAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBleHBvcnRzJDE7XG4gIH1cbn1cblxuZXhwb3J0cy5TZW50cnlBbnRocm9waWNBaUluc3RydW1lbnRhdGlvbiA9IFNlbnRyeUFudGhyb3BpY0FpSW5zdHJ1bWVudGF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5zdHJ1bWVudGF0aW9uLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationConnect = __webpack_require__(/*! @opentelemetry/instrumentation-connect */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-connect@0.57.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-connect/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Connect';\n\nconst instrumentConnect = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationConnect.ConnectInstrumentation());\n\nconst _connectIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentConnect();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Connect](https://github.com/senchalabs/connect/).\n *\n * If you also want to capture errors, you need to call `setupConnectErrorHandler(app)` after you initialize your connect app.\n *\n * For more information, see the [connect documentation](https://docs.sentry.io/platforms/javascript/guides/connect/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.connectIntegration()],\n * })\n * ```\n */\nconst connectIntegration = core.defineIntegration(_connectIntegration);\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction connectErrorMiddleware(err, req, res, next) {\n core.captureException(err, {\n mechanism: {\n handled: false,\n type: 'auto.middleware.connect',\n },\n });\n next(err);\n}\n\n/**\n * Add a Connect middleware to capture errors to Sentry.\n *\n * @param app The Connect app to attach the error handler to\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const connect = require(\"connect\");\n *\n * const app = connect();\n *\n * Sentry.setupConnectErrorHandler(app);\n *\n * // Add you connect routes here\n *\n * app.listen(3000);\n * ```\n */\nconst setupConnectErrorHandler = (app) => {\n app.use(connectErrorMiddleware);\n\n // Sadly, ConnectInstrumentation has no requestHook, so we need to add the attributes here\n // We register this hook in this method, because if we register it in the integration `setup`,\n // it would always run even for users that are not even using connect\n const client = core.getClient();\n if (client) {\n client.on('spanStart', span => {\n addConnectSpanAttributes(span);\n });\n }\n\n nodeCore.ensureIsWrapped(app.use, 'connect');\n};\n\nfunction addConnectSpanAttributes(span) {\n const attributes = core.spanToJSON(span).data;\n\n // this is one of: middleware, request_handler\n const type = attributes['connect.type'];\n\n // If this is already set, or we have no connect span, no need to process again...\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.connect',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.connect`,\n });\n\n // Also update the name, we don't need the \"middleware - \" prefix\n const name = attributes['connect.name'];\n if (typeof name === 'string') {\n span.updateName(name);\n }\n}\n\nexports.connectIntegration = connectIntegration;\nexports.instrumentConnect = instrumentConnect;\nexports.setupConnectErrorHandler = setupConnectErrorHandler;\n//# sourceMappingURL=connect.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvY29ubmVjdC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDRDQUE0QyxLQUFLO0FBQ2pELEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLDBCQUEwQjtBQUMxQix5QkFBeUI7QUFDekIsZ0NBQWdDO0FBQ2hDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2Nvbm5lY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbkNvbm5lY3QgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tY29ubmVjdCcpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0Nvbm5lY3QnO1xuXG5jb25zdCBpbnN0cnVtZW50Q29ubmVjdCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkNvbm5lY3QuQ29ubmVjdEluc3RydW1lbnRhdGlvbigpKTtcblxuY29uc3QgX2Nvbm5lY3RJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50Q29ubmVjdCgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIFtDb25uZWN0XShodHRwczovL2dpdGh1Yi5jb20vc2VuY2hhbGFicy9jb25uZWN0LykuXG4gKlxuICogSWYgeW91IGFsc28gd2FudCB0byBjYXB0dXJlIGVycm9ycywgeW91IG5lZWQgdG8gY2FsbCBgc2V0dXBDb25uZWN0RXJyb3JIYW5kbGVyKGFwcClgIGFmdGVyIHlvdSBpbml0aWFsaXplIHlvdXIgY29ubmVjdCBhcHAuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Nvbm5lY3QgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvY29ubmVjdC8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5jb25uZWN0SW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGNvbm5lY3RJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2Nvbm5lY3RJbnRlZ3JhdGlvbik7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5mdW5jdGlvbiBjb25uZWN0RXJyb3JNaWRkbGV3YXJlKGVyciwgcmVxLCByZXMsIG5leHQpIHtcbiAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGVyciwge1xuICAgIG1lY2hhbmlzbToge1xuICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICB0eXBlOiAnYXV0by5taWRkbGV3YXJlLmNvbm5lY3QnLFxuICAgIH0sXG4gIH0pO1xuICBuZXh0KGVycik7XG59XG5cbi8qKlxuICogQWRkIGEgQ29ubmVjdCBtaWRkbGV3YXJlIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gYXBwIFRoZSBDb25uZWN0IGFwcCB0byBhdHRhY2ggdGhlIGVycm9yIGhhbmRsZXIgdG9cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBjb25uZWN0ID0gcmVxdWlyZShcImNvbm5lY3RcIik7XG4gKlxuICogY29uc3QgYXBwID0gY29ubmVjdCgpO1xuICpcbiAqIFNlbnRyeS5zZXR1cENvbm5lY3RFcnJvckhhbmRsZXIoYXBwKTtcbiAqXG4gKiAvLyBBZGQgeW91IGNvbm5lY3Qgcm91dGVzIGhlcmVcbiAqXG4gKiBhcHAubGlzdGVuKDMwMDApO1xuICogYGBgXG4gKi9cbmNvbnN0IHNldHVwQ29ubmVjdEVycm9ySGFuZGxlciA9IChhcHApID0+IHtcbiAgYXBwLnVzZShjb25uZWN0RXJyb3JNaWRkbGV3YXJlKTtcblxuICAvLyBTYWRseSwgQ29ubmVjdEluc3RydW1lbnRhdGlvbiBoYXMgbm8gcmVxdWVzdEhvb2ssIHNvIHdlIG5lZWQgdG8gYWRkIHRoZSBhdHRyaWJ1dGVzIGhlcmVcbiAgLy8gV2UgcmVnaXN0ZXIgdGhpcyBob29rIGluIHRoaXMgbWV0aG9kLCBiZWNhdXNlIGlmIHdlIHJlZ2lzdGVyIGl0IGluIHRoZSBpbnRlZ3JhdGlvbiBgc2V0dXBgLFxuICAvLyBpdCB3b3VsZCBhbHdheXMgcnVuIGV2ZW4gZm9yIHVzZXJzIHRoYXQgYXJlIG5vdCBldmVuIHVzaW5nIGNvbm5lY3RcbiAgY29uc3QgY2xpZW50ID0gY29yZS5nZXRDbGllbnQoKTtcbiAgaWYgKGNsaWVudCkge1xuICAgIGNsaWVudC5vbignc3BhblN0YXJ0Jywgc3BhbiA9PiB7XG4gICAgICBhZGRDb25uZWN0U3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgfSk7XG4gIH1cblxuICBub2RlQ29yZS5lbnN1cmVJc1dyYXBwZWQoYXBwLnVzZSwgJ2Nvbm5lY3QnKTtcbn07XG5cbmZ1bmN0aW9uIGFkZENvbm5lY3RTcGFuQXR0cmlidXRlcyhzcGFuKSB7XG4gIGNvbnN0IGF0dHJpYnV0ZXMgPSBjb3JlLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcblxuICAvLyB0aGlzIGlzIG9uZSBvZjogbWlkZGxld2FyZSwgcmVxdWVzdF9oYW5kbGVyXG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydjb25uZWN0LnR5cGUnXTtcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIGNvbm5lY3Qgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF0gfHwgIXR5cGUpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBzcGFuLnNldEF0dHJpYnV0ZXMoe1xuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1JJR0lOXTogJ2F1dG8uaHR0cC5vdGVsLmNvbm5lY3QnLFxuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiBgJHt0eXBlfS5jb25uZWN0YCxcbiAgfSk7XG5cbiAgLy8gQWxzbyB1cGRhdGUgdGhlIG5hbWUsIHdlIGRvbid0IG5lZWQgdGhlIFwibWlkZGxld2FyZSAtIFwiIHByZWZpeFxuICBjb25zdCBuYW1lID0gYXR0cmlidXRlc1snY29ubmVjdC5uYW1lJ107XG4gIGlmICh0eXBlb2YgbmFtZSA9PT0gJ3N0cmluZycpIHtcbiAgICBzcGFuLnVwZGF0ZU5hbWUobmFtZSk7XG4gIH1cbn1cblxuZXhwb3J0cy5jb25uZWN0SW50ZWdyYXRpb24gPSBjb25uZWN0SW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRDb25uZWN0ID0gaW5zdHJ1bWVudENvbm5lY3Q7XG5leHBvcnRzLnNldHVwQ29ubmVjdEVycm9ySGFuZGxlciA9IHNldHVwQ29ubmVjdEVycm9ySGFuZGxlcjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNvbm5lY3QuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationDataloader = __webpack_require__(/*! @opentelemetry/instrumentation-dataloader */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-dataloader@0.31.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-dataloader/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Dataloader';\n\nconst instrumentDataloader = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationDataloader.DataloaderInstrumentation({\n requireParentSpan: true,\n }),\n);\n\nconst _dataloaderIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentDataloader();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n // This is called either immediately or when the instrumentation is wrapped\n instrumentationWrappedCallback?.(() => {\n client.on('spanStart', span => {\n const spanJSON = core.spanToJSON(span);\n if (spanJSON.description?.startsWith('dataloader')) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.dataloader');\n }\n\n // These are all possible dataloader span descriptions\n // Still checking for the future versions\n // in case they add support for `clear` and `prime`\n if (\n spanJSON.description === 'dataloader.load' ||\n spanJSON.description === 'dataloader.loadMany' ||\n spanJSON.description === 'dataloader.batch'\n ) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, 'cache.get');\n // TODO: We can try adding `key` to the `data` attribute upstream.\n // Or alternatively, we can add `requestHook` to the dataloader instrumentation.\n }\n });\n });\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [dataloader](https://www.npmjs.com/package/dataloader) library.\n *\n * For more information, see the [`dataloaderIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/dataloader/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.dataloaderIntegration()],\n * });\n * ```\n */\nconst dataloaderIntegration = core.defineIntegration(_dataloaderIntegration);\n\nexports.dataloaderIntegration = dataloaderIntegration;\nexports.instrumentDataloader = instrumentDataloader;\n//# sourceMappingURL=dataloader.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZGF0YWxvYWRlci5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxrQ0FBa0MsbUJBQU8sQ0FBQyxpT0FBMkM7QUFDckYsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUCxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLDZCQUE2QjtBQUM3Qiw0QkFBNEI7QUFDNUIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZGF0YWxvYWRlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uRGF0YWxvYWRlciA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1kYXRhbG9hZGVyJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnRGF0YWxvYWRlcic7XG5cbmNvbnN0IGluc3RydW1lbnREYXRhbG9hZGVyID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgKCkgPT5cbiAgICBuZXcgaW5zdHJ1bWVudGF0aW9uRGF0YWxvYWRlci5EYXRhbG9hZGVySW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIHJlcXVpcmVQYXJlbnRTcGFuOiB0cnVlLFxuICAgIH0pLFxuKTtcblxuY29uc3QgX2RhdGFsb2FkZXJJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIGxldCBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2s7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IGluc3RydW1lbnREYXRhbG9hZGVyKCk7XG4gICAgICBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2sgPSBub2RlQ29yZS5pbnN0cnVtZW50V2hlbldyYXBwZWQoaW5zdHJ1bWVudGF0aW9uKTtcbiAgICB9LFxuXG4gICAgc2V0dXAoY2xpZW50KSB7XG4gICAgICAvLyBUaGlzIGlzIGNhbGxlZCBlaXRoZXIgaW1tZWRpYXRlbHkgb3Igd2hlbiB0aGUgaW5zdHJ1bWVudGF0aW9uIGlzIHdyYXBwZWRcbiAgICAgIGluc3RydW1lbnRhdGlvbldyYXBwZWRDYWxsYmFjaz8uKCgpID0+IHtcbiAgICAgICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCBzcGFuID0+IHtcbiAgICAgICAgICBjb25zdCBzcGFuSlNPTiA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgICAgICAgICBpZiAoc3BhbkpTT04uZGVzY3JpcHRpb24/LnN0YXJ0c1dpdGgoJ2RhdGFsb2FkZXInKSkge1xuICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTiwgJ2F1dG8uZGIub3RlbC5kYXRhbG9hZGVyJyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gVGhlc2UgYXJlIGFsbCBwb3NzaWJsZSBkYXRhbG9hZGVyIHNwYW4gZGVzY3JpcHRpb25zXG4gICAgICAgICAgLy8gU3RpbGwgY2hlY2tpbmcgZm9yIHRoZSBmdXR1cmUgdmVyc2lvbnNcbiAgICAgICAgICAvLyBpbiBjYXNlIHRoZXkgYWRkIHN1cHBvcnQgZm9yIGBjbGVhcmAgYW5kIGBwcmltZWBcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBzcGFuSlNPTi5kZXNjcmlwdGlvbiA9PT0gJ2RhdGFsb2FkZXIubG9hZCcgfHxcbiAgICAgICAgICAgIHNwYW5KU09OLmRlc2NyaXB0aW9uID09PSAnZGF0YWxvYWRlci5sb2FkTWFueScgfHxcbiAgICAgICAgICAgIHNwYW5KU09OLmRlc2NyaXB0aW9uID09PSAnZGF0YWxvYWRlci5iYXRjaCdcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgJ2NhY2hlLmdldCcpO1xuICAgICAgICAgICAgLy8gVE9ETzogV2UgY2FuIHRyeSBhZGRpbmcgYGtleWAgdG8gdGhlIGBkYXRhYCBhdHRyaWJ1dGUgdXBzdHJlYW0uXG4gICAgICAgICAgICAvLyBPciBhbHRlcm5hdGl2ZWx5LCB3ZSBjYW4gYWRkIGByZXF1ZXN0SG9va2AgdG8gdGhlIGRhdGFsb2FkZXIgaW5zdHJ1bWVudGF0aW9uLlxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2RhdGFsb2FkZXJdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2RhdGFsb2FkZXIpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BkYXRhbG9hZGVySW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvZGF0YWxvYWRlci8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmRhdGFsb2FkZXJJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IGRhdGFsb2FkZXJJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2RhdGFsb2FkZXJJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuZGF0YWxvYWRlckludGVncmF0aW9uID0gZGF0YWxvYWRlckludGVncmF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50RGF0YWxvYWRlciA9IGluc3RydW1lbnREYXRhbG9hZGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YWxvYWRlci5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationExpress = __webpack_require__(/*! @opentelemetry/instrumentation-express */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-express@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-express/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../debug-build.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\nconst INTEGRATION_NAME = 'Express';\n\nfunction requestHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.http.otel.express');\n\n const attributes = core.spanToJSON(span).data;\n // this is one of: middleware, request_handler, router\n const type = attributes['express.type'];\n\n if (type) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, `${type}.express`);\n }\n\n // Also update the name, we don't need to \"middleware - \" prefix\n const name = attributes['express.name'];\n if (typeof name === 'string') {\n span.updateName(name);\n }\n}\n\nfunction spanNameHook(info, defaultName) {\n if (core.getIsolationScope() === core.getDefaultIsolationScope()) {\n debugBuild.DEBUG_BUILD && core.debug.warn('Isolation scope is still default isolation scope - skipping setting transactionName');\n return defaultName;\n }\n if (info.layerType === 'request_handler') {\n // type cast b/c Otel unfortunately types info.request as any :(\n const req = info.request ;\n const method = req.method ? req.method.toUpperCase() : 'GET';\n core.getIsolationScope().setTransactionName(`${method} ${info.route}`);\n }\n return defaultName;\n}\n\nconst instrumentExpress = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationExpress.ExpressInstrumentation({\n requestHook: span => requestHook(span),\n spanNameHook: (info, defaultName) => spanNameHook(info, defaultName),\n }),\n);\n\nconst _expressIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentExpress();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Express](https://expressjs.com/).\n *\n * If you also want to capture errors, you need to call `setupExpressErrorHandler(app)` after you set up your Express server.\n *\n * For more information, see the [express documentation](https://docs.sentry.io/platforms/javascript/guides/express/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.expressIntegration()],\n * })\n * ```\n */\nconst expressIntegration = core.defineIntegration(_expressIntegration);\n\n/**\n * An Express-compatible error handler.\n */\nfunction expressErrorHandler(options) {\n return function sentryErrorMiddleware(\n error,\n request,\n res,\n next,\n ) {\n const normalizedRequest = core.httpRequestToRequestData(request);\n // Ensure we use the express-enhanced request here, instead of the plain HTTP one\n // When an error happens, the `expressRequestHandler` middleware does not run, so we set it here too\n core.getIsolationScope().setSDKProcessingMetadata({ normalizedRequest });\n\n const shouldHandleError = options?.shouldHandleError || defaultShouldHandleError;\n\n if (shouldHandleError(error)) {\n const eventId = core.captureException(error, { mechanism: { type: 'auto.middleware.express', handled: false } });\n (res ).sentry = eventId;\n }\n\n next(error);\n };\n}\n\nfunction expressRequestHandler() {\n return function sentryRequestMiddleware(\n request,\n _res,\n next,\n ) {\n const normalizedRequest = core.httpRequestToRequestData(request);\n // Ensure we use the express-enhanced request here, instead of the plain HTTP one\n core.getIsolationScope().setSDKProcessingMetadata({ normalizedRequest });\n\n next();\n };\n}\n\n/**\n * Add an Express error handler to capture errors to Sentry.\n *\n * The error handler must be before any other middleware and after all controllers.\n *\n * @param app The Express instances\n * @param options {ExpressHandlerOptions} Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const express = require(\"express\");\n *\n * const app = express();\n *\n * // Add your routes, etc.\n *\n * // Add this after all routes,\n * // but before any and other error-handling middlewares are defined\n * Sentry.setupExpressErrorHandler(app);\n *\n * app.listen(3000);\n * ```\n */\nfunction setupExpressErrorHandler(\n app,\n options,\n) {\n app.use(expressRequestHandler());\n app.use(expressErrorHandler(options));\n nodeCore.ensureIsWrapped(app.use, 'express');\n}\n\nfunction getStatusCodeFromResponse(error) {\n const statusCode = error.status || error.statusCode || error.status_code || error.output?.statusCode;\n return statusCode ? parseInt(statusCode , 10) : 500;\n}\n\n/** Returns true if response code is internal server error */\nfunction defaultShouldHandleError(error) {\n const status = getStatusCodeFromResponse(error);\n return status >= 500;\n}\n\nexports.expressErrorHandler = expressErrorHandler;\nexports.expressIntegration = expressIntegration;\nexports.instrumentExpress = instrumentExpress;\nexports.setupExpressErrorHandler = setupExpressErrorHandler;\n//# sourceMappingURL=express.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZXhwcmVzcy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxnSUFBc0I7O0FBRWpEOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNERBQTRELEtBQUs7QUFDakU7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCxRQUFRLEVBQUUsV0FBVztBQUN4RTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCxtQkFBbUI7O0FBRTNFOztBQUVBO0FBQ0EscURBQXFELGFBQWEsbURBQW1EO0FBQ3JIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3REFBd0QsbUJBQW1COztBQUUzRTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHVCQUF1QjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLDJCQUEyQjtBQUMzQiwwQkFBMEI7QUFDMUIseUJBQXlCO0FBQ3pCLGdDQUFnQztBQUNoQyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9leHByZXNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25FeHByZXNzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWV4cHJlc3MnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi8uLi9kZWJ1Zy1idWlsZC5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0V4cHJlc3MnO1xuXG5mdW5jdGlvbiByZXF1ZXN0SG9vayhzcGFuKSB7XG4gIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5odHRwLm90ZWwuZXhwcmVzcycpO1xuXG4gIGNvbnN0IGF0dHJpYnV0ZXMgPSBjb3JlLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcbiAgLy8gdGhpcyBpcyBvbmUgb2Y6IG1pZGRsZXdhcmUsIHJlcXVlc3RfaGFuZGxlciwgcm91dGVyXG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydleHByZXNzLnR5cGUnXTtcblxuICBpZiAodHlwZSkge1xuICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgYCR7dHlwZX0uZXhwcmVzc2ApO1xuICB9XG5cbiAgLy8gQWxzbyB1cGRhdGUgdGhlIG5hbWUsIHdlIGRvbid0IG5lZWQgdG8gXCJtaWRkbGV3YXJlIC0gXCIgcHJlZml4XG4gIGNvbnN0IG5hbWUgPSBhdHRyaWJ1dGVzWydleHByZXNzLm5hbWUnXTtcbiAgaWYgKHR5cGVvZiBuYW1lID09PSAnc3RyaW5nJykge1xuICAgIHNwYW4udXBkYXRlTmFtZShuYW1lKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzcGFuTmFtZUhvb2soaW5mbywgZGVmYXVsdE5hbWUpIHtcbiAgaWYgKGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKSA9PT0gY29yZS5nZXREZWZhdWx0SXNvbGF0aW9uU2NvcGUoKSkge1xuICAgIGRlYnVnQnVpbGQuREVCVUdfQlVJTEQgJiYgY29yZS5kZWJ1Zy53YXJuKCdJc29sYXRpb24gc2NvcGUgaXMgc3RpbGwgZGVmYXVsdCBpc29sYXRpb24gc2NvcGUgLSBza2lwcGluZyBzZXR0aW5nIHRyYW5zYWN0aW9uTmFtZScpO1xuICAgIHJldHVybiBkZWZhdWx0TmFtZTtcbiAgfVxuICBpZiAoaW5mby5sYXllclR5cGUgPT09ICdyZXF1ZXN0X2hhbmRsZXInKSB7XG4gICAgLy8gdHlwZSBjYXN0IGIvYyBPdGVsIHVuZm9ydHVuYXRlbHkgdHlwZXMgaW5mby5yZXF1ZXN0IGFzIGFueSA6KFxuICAgIGNvbnN0IHJlcSA9IGluZm8ucmVxdWVzdCA7XG4gICAgY29uc3QgbWV0aG9kID0gcmVxLm1ldGhvZCA/IHJlcS5tZXRob2QudG9VcHBlckNhc2UoKSA6ICdHRVQnO1xuICAgIGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke2luZm8ucm91dGV9YCk7XG4gIH1cbiAgcmV0dXJuIGRlZmF1bHROYW1lO1xufVxuXG5jb25zdCBpbnN0cnVtZW50RXhwcmVzcyA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+XG4gICAgbmV3IGluc3RydW1lbnRhdGlvbkV4cHJlc3MuRXhwcmVzc0luc3RydW1lbnRhdGlvbih7XG4gICAgICByZXF1ZXN0SG9vazogc3BhbiA9PiByZXF1ZXN0SG9vayhzcGFuKSxcbiAgICAgIHNwYW5OYW1lSG9vazogKGluZm8sIGRlZmF1bHROYW1lKSA9PiBzcGFuTmFtZUhvb2soaW5mbywgZGVmYXVsdE5hbWUpLFxuICAgIH0pLFxuKTtcblxuY29uc3QgX2V4cHJlc3NJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50RXhwcmVzcygpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIFtFeHByZXNzXShodHRwczovL2V4cHJlc3Nqcy5jb20vKS5cbiAqXG4gKiBJZiB5b3UgYWxzbyB3YW50IHRvIGNhcHR1cmUgZXJyb3JzLCB5b3UgbmVlZCB0byBjYWxsIGBzZXR1cEV4cHJlc3NFcnJvckhhbmRsZXIoYXBwKWAgYWZ0ZXIgeW91IHNldCB1cCB5b3VyIEV4cHJlc3Mgc2VydmVyLlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtleHByZXNzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL2V4cHJlc3MvKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuZXhwcmVzc0ludGVncmF0aW9uKCldLFxuICogfSlcbiAqIGBgYFxuICovXG5jb25zdCBleHByZXNzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9leHByZXNzSW50ZWdyYXRpb24pO1xuXG4vKipcbiAqIEFuIEV4cHJlc3MtY29tcGF0aWJsZSBlcnJvciBoYW5kbGVyLlxuICovXG5mdW5jdGlvbiBleHByZXNzRXJyb3JIYW5kbGVyKG9wdGlvbnMpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHNlbnRyeUVycm9yTWlkZGxld2FyZShcbiAgICBlcnJvcixcbiAgICByZXF1ZXN0LFxuICAgIHJlcyxcbiAgICBuZXh0LFxuICApIHtcbiAgICBjb25zdCBub3JtYWxpemVkUmVxdWVzdCA9IGNvcmUuaHR0cFJlcXVlc3RUb1JlcXVlc3REYXRhKHJlcXVlc3QpO1xuICAgIC8vIEVuc3VyZSB3ZSB1c2UgdGhlIGV4cHJlc3MtZW5oYW5jZWQgcmVxdWVzdCBoZXJlLCBpbnN0ZWFkIG9mIHRoZSBwbGFpbiBIVFRQIG9uZVxuICAgIC8vIFdoZW4gYW4gZXJyb3IgaGFwcGVucywgdGhlIGBleHByZXNzUmVxdWVzdEhhbmRsZXJgIG1pZGRsZXdhcmUgZG9lcyBub3QgcnVuLCBzbyB3ZSBzZXQgaXQgaGVyZSB0b29cbiAgICBjb3JlLmdldElzb2xhdGlvblNjb3BlKCkuc2V0U0RLUHJvY2Vzc2luZ01ldGFkYXRhKHsgbm9ybWFsaXplZFJlcXVlc3QgfSk7XG5cbiAgICBjb25zdCBzaG91bGRIYW5kbGVFcnJvciA9IG9wdGlvbnM/LnNob3VsZEhhbmRsZUVycm9yIHx8IGRlZmF1bHRTaG91bGRIYW5kbGVFcnJvcjtcblxuICAgIGlmIChzaG91bGRIYW5kbGVFcnJvcihlcnJvcikpIHtcbiAgICAgIGNvbnN0IGV2ZW50SWQgPSBjb3JlLmNhcHR1cmVFeGNlcHRpb24oZXJyb3IsIHsgbWVjaGFuaXNtOiB7IHR5cGU6ICdhdXRvLm1pZGRsZXdhcmUuZXhwcmVzcycsIGhhbmRsZWQ6IGZhbHNlIH0gfSk7XG4gICAgICAocmVzICkuc2VudHJ5ID0gZXZlbnRJZDtcbiAgICB9XG5cbiAgICBuZXh0KGVycm9yKTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZXhwcmVzc1JlcXVlc3RIYW5kbGVyKCkge1xuICByZXR1cm4gZnVuY3Rpb24gc2VudHJ5UmVxdWVzdE1pZGRsZXdhcmUoXG4gICAgcmVxdWVzdCxcbiAgICBfcmVzLFxuICAgIG5leHQsXG4gICkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZWRSZXF1ZXN0ID0gY29yZS5odHRwUmVxdWVzdFRvUmVxdWVzdERhdGEocmVxdWVzdCk7XG4gICAgLy8gRW5zdXJlIHdlIHVzZSB0aGUgZXhwcmVzcy1lbmhhbmNlZCByZXF1ZXN0IGhlcmUsIGluc3RlYWQgb2YgdGhlIHBsYWluIEhUVFAgb25lXG4gICAgY29yZS5nZXRJc29sYXRpb25TY29wZSgpLnNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh7IG5vcm1hbGl6ZWRSZXF1ZXN0IH0pO1xuXG4gICAgbmV4dCgpO1xuICB9O1xufVxuXG4vKipcbiAqIEFkZCBhbiBFeHByZXNzIGVycm9yIGhhbmRsZXIgdG8gY2FwdHVyZSBlcnJvcnMgdG8gU2VudHJ5LlxuICpcbiAqIFRoZSBlcnJvciBoYW5kbGVyIG11c3QgYmUgYmVmb3JlIGFueSBvdGhlciBtaWRkbGV3YXJlIGFuZCBhZnRlciBhbGwgY29udHJvbGxlcnMuXG4gKlxuICogQHBhcmFtIGFwcCBUaGUgRXhwcmVzcyBpbnN0YW5jZXNcbiAqIEBwYXJhbSBvcHRpb25zIHtFeHByZXNzSGFuZGxlck9wdGlvbnN9IENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGhhbmRsZXJcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBleHByZXNzID0gcmVxdWlyZShcImV4cHJlc3NcIik7XG4gKlxuICogY29uc3QgYXBwID0gZXhwcmVzcygpO1xuICpcbiAqIC8vIEFkZCB5b3VyIHJvdXRlcywgZXRjLlxuICpcbiAqIC8vIEFkZCB0aGlzIGFmdGVyIGFsbCByb3V0ZXMsXG4gKiAvLyBidXQgYmVmb3JlIGFueSBhbmQgb3RoZXIgZXJyb3ItaGFuZGxpbmcgbWlkZGxld2FyZXMgYXJlIGRlZmluZWRcbiAqIFNlbnRyeS5zZXR1cEV4cHJlc3NFcnJvckhhbmRsZXIoYXBwKTtcbiAqXG4gKiBhcHAubGlzdGVuKDMwMDApO1xuICogYGBgXG4gKi9cbmZ1bmN0aW9uIHNldHVwRXhwcmVzc0Vycm9ySGFuZGxlcihcbiAgYXBwLFxuICBvcHRpb25zLFxuKSB7XG4gIGFwcC51c2UoZXhwcmVzc1JlcXVlc3RIYW5kbGVyKCkpO1xuICBhcHAudXNlKGV4cHJlc3NFcnJvckhhbmRsZXIob3B0aW9ucykpO1xuICBub2RlQ29yZS5lbnN1cmVJc1dyYXBwZWQoYXBwLnVzZSwgJ2V4cHJlc3MnKTtcbn1cblxuZnVuY3Rpb24gZ2V0U3RhdHVzQ29kZUZyb21SZXNwb25zZShlcnJvcikge1xuICBjb25zdCBzdGF0dXNDb2RlID0gZXJyb3Iuc3RhdHVzIHx8IGVycm9yLnN0YXR1c0NvZGUgfHwgZXJyb3Iuc3RhdHVzX2NvZGUgfHwgZXJyb3Iub3V0cHV0Py5zdGF0dXNDb2RlO1xuICByZXR1cm4gc3RhdHVzQ29kZSA/IHBhcnNlSW50KHN0YXR1c0NvZGUgLCAxMCkgOiA1MDA7XG59XG5cbi8qKiBSZXR1cm5zIHRydWUgaWYgcmVzcG9uc2UgY29kZSBpcyBpbnRlcm5hbCBzZXJ2ZXIgZXJyb3IgKi9cbmZ1bmN0aW9uIGRlZmF1bHRTaG91bGRIYW5kbGVFcnJvcihlcnJvcikge1xuICBjb25zdCBzdGF0dXMgPSBnZXRTdGF0dXNDb2RlRnJvbVJlc3BvbnNlKGVycm9yKTtcbiAgcmV0dXJuIHN0YXR1cyA+PSA1MDA7XG59XG5cbmV4cG9ydHMuZXhwcmVzc0Vycm9ySGFuZGxlciA9IGV4cHJlc3NFcnJvckhhbmRsZXI7XG5leHBvcnRzLmV4cHJlc3NJbnRlZ3JhdGlvbiA9IGV4cHJlc3NJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEV4cHJlc3MgPSBpbnN0cnVtZW50RXhwcmVzcztcbmV4cG9ydHMuc2V0dXBFeHByZXNzRXJyb3JIYW5kbGVyID0gc2V0dXBFeHByZXNzRXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZXhwcmVzcy5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js":
/*!***************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js ***!
\***************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst diagnosticsChannel = __webpack_require__(/*! node:diagnostics_channel */ \"node:diagnostics_channel\");\nconst otel = __webpack_require__(/*! @fastify/otel */ \"(rsc)/./node_modules/.pnpm/@fastify+otel@0.18.0_@opentelemetry+api@1.9.1/node_modules/@fastify/otel/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../../debug-build.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\nconst instrumentation = __webpack_require__(/*! ./v3/instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js\");\n\n/**\n * Options for the Fastify integration.\n *\n * `shouldHandleError` - Callback method deciding whether error should be captured and sent to Sentry\n * This is used on Fastify v5 where Sentry handles errors in the diagnostics channel.\n * Fastify v3 and v4 use `setupFastifyErrorHandler` instead.\n *\n * @example\n *\n * ```javascript\n * Sentry.init({\n * integrations: [\n * Sentry.fastifyIntegration({\n * shouldHandleError(_error, _request, reply) {\n * return reply.statusCode >= 500;\n * },\n * });\n * },\n * });\n * ```\n *\n */\n\nconst INTEGRATION_NAME = 'Fastify';\n\nconst instrumentFastifyV3 = nodeCore.generateInstrumentOnce(\n `${INTEGRATION_NAME}.v3`,\n () => new instrumentation.FastifyInstrumentationV3(),\n);\n\nfunction getFastifyIntegration() {\n const client = core.getClient();\n if (!client) {\n return undefined;\n } else {\n return client.getIntegrationByName(INTEGRATION_NAME);\n }\n}\n\nfunction handleFastifyError(\n\n error,\n request,\n reply,\n handlerOrigin,\n) {\n const shouldHandleError = getFastifyIntegration()?.getShouldHandleError() || defaultShouldHandleError;\n // Diagnostics channel runs before the onError hook, so we can use it to check if the handler was already registered\n if (handlerOrigin === 'diagnostics-channel') {\n this.diagnosticsChannelExists = true;\n }\n\n if (this.diagnosticsChannelExists && handlerOrigin === 'onError-hook') {\n debugBuild.DEBUG_BUILD &&\n core.debug.warn(\n 'Fastify error handler was already registered via diagnostics channel.',\n 'You can safely remove `setupFastifyErrorHandler` call and set `shouldHandleError` on the integration options.',\n );\n\n // If the diagnostics channel already exists, we don't need to handle the error again\n return;\n }\n\n if (shouldHandleError(error, request, reply)) {\n core.captureException(error, { mechanism: { handled: false, type: 'auto.function.fastify' } });\n }\n}\n\nconst instrumentFastify = nodeCore.generateInstrumentOnce(`${INTEGRATION_NAME}.v5`, () => {\n const fastifyOtelInstrumentationInstance = new otel.FastifyOtelInstrumentation();\n const plugin = fastifyOtelInstrumentationInstance.plugin();\n\n // This message handler works for Fastify versions 3, 4 and 5\n diagnosticsChannel.subscribe('fastify.initialization', message => {\n const fastifyInstance = (message ).fastify;\n\n fastifyInstance?.register(plugin).after(err => {\n if (err) {\n debugBuild.DEBUG_BUILD && core.debug.error('Failed to setup Fastify instrumentation', err);\n } else {\n instrumentClient();\n\n if (fastifyInstance) {\n instrumentOnRequest(fastifyInstance);\n }\n }\n });\n });\n\n // This diagnostics channel only works on Fastify version 5\n // For versions 3 and 4, we use `setupFastifyErrorHandler` instead\n diagnosticsChannel.subscribe('tracing:fastify.request.handler:error', message => {\n const { error, request, reply } = message\n\n;\n\n handleFastifyError.call(handleFastifyError, error, request, reply, 'diagnostics-channel');\n });\n\n // Returning this as Instrumentation to avoid leaking @fastify/otel types into the public API\n return fastifyOtelInstrumentationInstance ;\n});\n\nconst _fastifyIntegration = (({ shouldHandleError }) => {\n let _shouldHandleError;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n _shouldHandleError = shouldHandleError || defaultShouldHandleError;\n\n instrumentFastifyV3();\n instrumentFastify();\n },\n getShouldHandleError() {\n return _shouldHandleError;\n },\n setShouldHandleError(fn) {\n _shouldHandleError = fn;\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Fastify](https://fastify.dev/).\n *\n * If you also want to capture errors, you need to call `setupFastifyErrorHandler(app)` after you set up your Fastify server.\n *\n * For more information, see the [fastify documentation](https://docs.sentry.io/platforms/javascript/guides/fastify/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.fastifyIntegration()],\n * })\n * ```\n */\nconst fastifyIntegration = core.defineIntegration((options = {}) =>\n _fastifyIntegration(options),\n);\n\n/**\n * Default function to determine if an error should be sent to Sentry\n *\n * 3xx and 4xx errors are not sent by default.\n */\nfunction defaultShouldHandleError(_error, _request, reply) {\n const statusCode = reply.statusCode;\n // 3xx and 4xx errors are not sent by default.\n return statusCode >= 500 || statusCode <= 299;\n}\n\n/**\n * Add an Fastify error handler to capture errors to Sentry.\n *\n * @param fastify The Fastify instance to which to add the error handler\n * @param options Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const Fastify = require(\"fastify\");\n *\n * const app = Fastify();\n *\n * Sentry.setupFastifyErrorHandler(app);\n *\n * // Add your routes, etc.\n *\n * app.listen({ port: 3000 });\n * ```\n */\nfunction setupFastifyErrorHandler(fastify, options) {\n if (options?.shouldHandleError) {\n getFastifyIntegration()?.setShouldHandleError(options.shouldHandleError);\n }\n\n const plugin = Object.assign(\n function (fastify, _options, done) {\n fastify.addHook('onError', async (request, reply, error) => {\n handleFastifyError.call(handleFastifyError, error, request, reply, 'onError-hook');\n });\n done();\n },\n {\n [Symbol.for('skip-override')]: true,\n [Symbol.for('fastify.display-name')]: 'sentry-fastify-error-handler',\n },\n );\n\n fastify.register(plugin);\n}\n\nfunction addFastifySpanAttributes(span) {\n const spanJSON = core.spanToJSON(span);\n const spanName = spanJSON.description;\n const attributes = spanJSON.data;\n\n const type = attributes['fastify.type'];\n\n const isHook = type === 'hook';\n const isHandler = type === spanName?.startsWith('handler -');\n // In @fastify/otel `request-handler` is separated by dash, not underscore\n const isRequestHandler = spanName === 'request' || type === 'request-handler';\n\n // If this is already set, or we have no fastify span, no need to process again...\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || (!isHandler && !isRequestHandler && !isHook)) {\n return;\n }\n\n const opPrefix = isHook ? 'hook' : isHandler ? 'middleware' : isRequestHandler ? 'request_handler' : '<unknown>';\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.fastify',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${opPrefix}.fastify`,\n });\n\n const attrName = attributes['fastify.name'] || attributes['plugin.name'] || attributes['hook.name'];\n if (typeof attrName === 'string') {\n // Try removing `fastify -> ` and `@fastify/otel -> ` prefixes\n // This is a bit of a hack, and not always working for all spans\n // But it's the best we can do without a proper API\n const updatedName = attrName.replace(/^fastify -> /, '').replace(/^@fastify\\/otel -> /, '');\n\n span.updateName(updatedName);\n }\n}\n\nfunction instrumentClient() {\n const client = core.getClient();\n if (client) {\n client.on('spanStart', (span) => {\n addFastifySpanAttributes(span);\n });\n }\n}\n\nfunction instrumentOnRequest(fastify) {\n fastify.addHook('onRequest', async (request, _reply) => {\n if (request.opentelemetry) {\n const { span } = request.opentelemetry();\n\n if (span) {\n addFastifySpanAttributes(span);\n }\n }\n\n const routeName = request.routeOptions?.url;\n const method = request.method || 'GET';\n\n core.getIsolationScope().setTransactionName(`${method} ${routeName}`);\n });\n}\n\nexports.fastifyIntegration = fastifyIntegration;\nexports.instrumentFastify = instrumentFastify;\nexports.instrumentFastifyV3 = instrumentFastifyV3;\nexports.setupFastifyErrorHandler = setupFastifyErrorHandler;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS9pbmRleC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwyQkFBMkIsbUJBQU8sQ0FBQywwREFBMEI7QUFDN0QsYUFBYSxtQkFBTyxDQUFDLG1JQUFlO0FBQ3BDLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsbUJBQW1CLG1CQUFPLENBQUMsbUlBQXlCO0FBQ3BELHdCQUF3QixtQkFBTyxDQUFDLHVLQUF5Qjs7QUFFekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWLFFBQVE7QUFDUixNQUFNO0FBQ04sSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBLEtBQUssaUJBQWlCO0FBQ3RCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxtQ0FBbUMsYUFBYSxpREFBaUQ7QUFDakc7QUFDQTs7QUFFQSw2REFBNkQsaUJBQWlCO0FBQzlFO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBLFlBQVksd0JBQXdCOztBQUVwQzs7QUFFQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLENBQUM7O0FBRUQsZ0NBQWdDLG1CQUFtQjtBQUNuRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLCtEQUErRDtBQUMvRDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsWUFBWTtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLDRDQUE0QyxTQUFTO0FBQ3JELEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsY0FBYyxPQUFPOztBQUVyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBLG1EQUFtRCxRQUFRLEVBQUUsVUFBVTtBQUN2RSxHQUFHO0FBQ0g7O0FBRUEsMEJBQTBCO0FBQzFCLHlCQUF5QjtBQUN6QiwyQkFBMkI7QUFDM0IsZ0NBQWdDO0FBQ2hDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2Zhc3RpZnkvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGRpYWdub3N0aWNzQ2hhbm5lbCA9IHJlcXVpcmUoJ25vZGU6ZGlhZ25vc3RpY3NfY2hhbm5lbCcpO1xuY29uc3Qgb3RlbCA9IHJlcXVpcmUoJ0BmYXN0aWZ5L290ZWwnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi8uLi8uLi9kZWJ1Zy1idWlsZC5qcycpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnLi92My9pbnN0cnVtZW50YXRpb24uanMnKTtcblxuLyoqXG4gKiBPcHRpb25zIGZvciB0aGUgRmFzdGlmeSBpbnRlZ3JhdGlvbi5cbiAqXG4gKiBgc2hvdWxkSGFuZGxlRXJyb3JgIC0gQ2FsbGJhY2sgbWV0aG9kIGRlY2lkaW5nIHdoZXRoZXIgZXJyb3Igc2hvdWxkIGJlIGNhcHR1cmVkIGFuZCBzZW50IHRvIFNlbnRyeVxuICogVGhpcyBpcyB1c2VkIG9uIEZhc3RpZnkgdjUgd2hlcmUgU2VudHJ5IGhhbmRsZXMgZXJyb3JzIGluIHRoZSBkaWFnbm9zdGljcyBjaGFubmVsLlxuICogRmFzdGlmeSB2MyBhbmQgdjQgdXNlIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXJgIGluc3RlYWQuXG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5mYXN0aWZ5SW50ZWdyYXRpb24oe1xuICogICAgICAgc2hvdWxkSGFuZGxlRXJyb3IoX2Vycm9yLCBfcmVxdWVzdCwgcmVwbHkpIHtcbiAqICAgICAgICAgcmV0dXJuIHJlcGx5LnN0YXR1c0NvZGUgPj0gNTAwO1xuICogICAgICAgfSxcbiAqICAgICB9KTtcbiAqICAgfSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICovXG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnRmFzdGlmeSc7XG5cbmNvbnN0IGluc3RydW1lbnRGYXN0aWZ5VjMgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBgJHtJTlRFR1JBVElPTl9OQU1FfS52M2AsXG4gICgpID0+IG5ldyBpbnN0cnVtZW50YXRpb24uRmFzdGlmeUluc3RydW1lbnRhdGlvblYzKCksXG4pO1xuXG5mdW5jdGlvbiBnZXRGYXN0aWZ5SW50ZWdyYXRpb24oKSB7XG4gIGNvbnN0IGNsaWVudCA9IGNvcmUuZ2V0Q2xpZW50KCk7XG4gIGlmICghY2xpZW50KSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gY2xpZW50LmdldEludGVncmF0aW9uQnlOYW1lKElOVEVHUkFUSU9OX05BTUUpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGhhbmRsZUZhc3RpZnlFcnJvcihcblxuICBlcnJvcixcbiAgcmVxdWVzdCxcbiAgcmVwbHksXG4gIGhhbmRsZXJPcmlnaW4sXG4pIHtcbiAgY29uc3Qgc2hvdWxkSGFuZGxlRXJyb3IgPSBnZXRGYXN0aWZ5SW50ZWdyYXRpb24oKT8uZ2V0U2hvdWxkSGFuZGxlRXJyb3IoKSB8fCBkZWZhdWx0U2hvdWxkSGFuZGxlRXJyb3I7XG4gIC8vIERpYWdub3N0aWNzIGNoYW5uZWwgcnVucyBiZWZvcmUgdGhlIG9uRXJyb3IgaG9vaywgc28gd2UgY2FuIHVzZSBpdCB0byBjaGVjayBpZiB0aGUgaGFuZGxlciB3YXMgYWxyZWFkeSByZWdpc3RlcmVkXG4gIGlmIChoYW5kbGVyT3JpZ2luID09PSAnZGlhZ25vc3RpY3MtY2hhbm5lbCcpIHtcbiAgICB0aGlzLmRpYWdub3N0aWNzQ2hhbm5lbEV4aXN0cyA9IHRydWU7XG4gIH1cblxuICBpZiAodGhpcy5kaWFnbm9zdGljc0NoYW5uZWxFeGlzdHMgJiYgaGFuZGxlck9yaWdpbiA9PT0gJ29uRXJyb3ItaG9vaycpIHtcbiAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmXG4gICAgICBjb3JlLmRlYnVnLndhcm4oXG4gICAgICAgICdGYXN0aWZ5IGVycm9yIGhhbmRsZXIgd2FzIGFscmVhZHkgcmVnaXN0ZXJlZCB2aWEgZGlhZ25vc3RpY3MgY2hhbm5lbC4nLFxuICAgICAgICAnWW91IGNhbiBzYWZlbHkgcmVtb3ZlIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXJgIGNhbGwgYW5kIHNldCBgc2hvdWxkSGFuZGxlRXJyb3JgIG9uIHRoZSBpbnRlZ3JhdGlvbiBvcHRpb25zLicsXG4gICAgICApO1xuXG4gICAgLy8gSWYgdGhlIGRpYWdub3N0aWNzIGNoYW5uZWwgYWxyZWFkeSBleGlzdHMsIHdlIGRvbid0IG5lZWQgdG8gaGFuZGxlIHRoZSBlcnJvciBhZ2FpblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmIChzaG91bGRIYW5kbGVFcnJvcihlcnJvciwgcmVxdWVzdCwgcmVwbHkpKSB7XG4gICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGVycm9yLCB7IG1lY2hhbmlzbTogeyBoYW5kbGVkOiBmYWxzZSwgdHlwZTogJ2F1dG8uZnVuY3Rpb24uZmFzdGlmeScgfSB9KTtcbiAgfVxufVxuXG5jb25zdCBpbnN0cnVtZW50RmFzdGlmeSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoYCR7SU5URUdSQVRJT05fTkFNRX0udjVgLCAoKSA9PiB7XG4gIGNvbnN0IGZhc3RpZnlPdGVsSW5zdHJ1bWVudGF0aW9uSW5zdGFuY2UgPSBuZXcgb3RlbC5GYXN0aWZ5T3RlbEluc3RydW1lbnRhdGlvbigpO1xuICBjb25zdCBwbHVnaW4gPSBmYXN0aWZ5T3RlbEluc3RydW1lbnRhdGlvbkluc3RhbmNlLnBsdWdpbigpO1xuXG4gIC8vIFRoaXMgbWVzc2FnZSBoYW5kbGVyIHdvcmtzIGZvciBGYXN0aWZ5IHZlcnNpb25zIDMsIDQgYW5kIDVcbiAgZGlhZ25vc3RpY3NDaGFubmVsLnN1YnNjcmliZSgnZmFzdGlmeS5pbml0aWFsaXphdGlvbicsIG1lc3NhZ2UgPT4ge1xuICAgIGNvbnN0IGZhc3RpZnlJbnN0YW5jZSA9IChtZXNzYWdlICkuZmFzdGlmeTtcblxuICAgIGZhc3RpZnlJbnN0YW5jZT8ucmVnaXN0ZXIocGx1Z2luKS5hZnRlcihlcnIgPT4ge1xuICAgICAgaWYgKGVycikge1xuICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcuZXJyb3IoJ0ZhaWxlZCB0byBzZXR1cCBGYXN0aWZ5IGluc3RydW1lbnRhdGlvbicsIGVycik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpbnN0cnVtZW50Q2xpZW50KCk7XG5cbiAgICAgICAgaWYgKGZhc3RpZnlJbnN0YW5jZSkge1xuICAgICAgICAgIGluc3RydW1lbnRPblJlcXVlc3QoZmFzdGlmeUluc3RhbmNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9KTtcblxuICAvLyBUaGlzIGRpYWdub3N0aWNzIGNoYW5uZWwgb25seSB3b3JrcyBvbiBGYXN0aWZ5IHZlcnNpb24gNVxuICAvLyBGb3IgdmVyc2lvbnMgMyBhbmQgNCwgd2UgdXNlIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXJgIGluc3RlYWRcbiAgZGlhZ25vc3RpY3NDaGFubmVsLnN1YnNjcmliZSgndHJhY2luZzpmYXN0aWZ5LnJlcXVlc3QuaGFuZGxlcjplcnJvcicsIG1lc3NhZ2UgPT4ge1xuICAgIGNvbnN0IHsgZXJyb3IsIHJlcXVlc3QsIHJlcGx5IH0gPSBtZXNzYWdlXG5cbjtcblxuICAgIGhhbmRsZUZhc3RpZnlFcnJvci5jYWxsKGhhbmRsZUZhc3RpZnlFcnJvciwgZXJyb3IsIHJlcXVlc3QsIHJlcGx5LCAnZGlhZ25vc3RpY3MtY2hhbm5lbCcpO1xuICB9KTtcblxuICAvLyBSZXR1cm5pbmcgdGhpcyBhcyBJbnN0cnVtZW50YXRpb24gdG8gYXZvaWQgbGVha2luZyBAZmFzdGlmeS9vdGVsIHR5cGVzIGludG8gdGhlIHB1YmxpYyBBUElcbiAgcmV0dXJuIGZhc3RpZnlPdGVsSW5zdHJ1bWVudGF0aW9uSW5zdGFuY2UgO1xufSk7XG5cbmNvbnN0IF9mYXN0aWZ5SW50ZWdyYXRpb24gPSAoKHsgc2hvdWxkSGFuZGxlRXJyb3IgfSkgPT4ge1xuICBsZXQgX3Nob3VsZEhhbmRsZUVycm9yO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBfc2hvdWxkSGFuZGxlRXJyb3IgPSBzaG91bGRIYW5kbGVFcnJvciB8fCBkZWZhdWx0U2hvdWxkSGFuZGxlRXJyb3I7XG5cbiAgICAgIGluc3RydW1lbnRGYXN0aWZ5VjMoKTtcbiAgICAgIGluc3RydW1lbnRGYXN0aWZ5KCk7XG4gICAgfSxcbiAgICBnZXRTaG91bGRIYW5kbGVFcnJvcigpIHtcbiAgICAgIHJldHVybiBfc2hvdWxkSGFuZGxlRXJyb3I7XG4gICAgfSxcbiAgICBzZXRTaG91bGRIYW5kbGVFcnJvcihmbikge1xuICAgICAgX3Nob3VsZEhhbmRsZUVycm9yID0gZm47XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgW0Zhc3RpZnldKGh0dHBzOi8vZmFzdGlmeS5kZXYvKS5cbiAqXG4gKiBJZiB5b3UgYWxzbyB3YW50IHRvIGNhcHR1cmUgZXJyb3JzLCB5b3UgbmVlZCB0byBjYWxsIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXIoYXBwKWAgYWZ0ZXIgeW91IHNldCB1cCB5b3VyIEZhc3RpZnkgc2VydmVyLlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtmYXN0aWZ5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL2Zhc3RpZnkvKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuZmFzdGlmeUludGVncmF0aW9uKCldLFxuICogfSlcbiAqIGBgYFxuICovXG5jb25zdCBmYXN0aWZ5SW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChvcHRpb25zID0ge30pID0+XG4gIF9mYXN0aWZ5SW50ZWdyYXRpb24ob3B0aW9ucyksXG4pO1xuXG4vKipcbiAqIERlZmF1bHQgZnVuY3Rpb24gdG8gZGV0ZXJtaW5lIGlmIGFuIGVycm9yIHNob3VsZCBiZSBzZW50IHRvIFNlbnRyeVxuICpcbiAqIDN4eCBhbmQgNHh4IGVycm9ycyBhcmUgbm90IHNlbnQgYnkgZGVmYXVsdC5cbiAqL1xuZnVuY3Rpb24gZGVmYXVsdFNob3VsZEhhbmRsZUVycm9yKF9lcnJvciwgX3JlcXVlc3QsIHJlcGx5KSB7XG4gIGNvbnN0IHN0YXR1c0NvZGUgPSByZXBseS5zdGF0dXNDb2RlO1xuICAvLyAzeHggYW5kIDR4eCBlcnJvcnMgYXJlIG5vdCBzZW50IGJ5IGRlZmF1bHQuXG4gIHJldHVybiBzdGF0dXNDb2RlID49IDUwMCB8fCBzdGF0dXNDb2RlIDw9IDI5OTtcbn1cblxuLyoqXG4gKiBBZGQgYW4gRmFzdGlmeSBlcnJvciBoYW5kbGVyIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gZmFzdGlmeSBUaGUgRmFzdGlmeSBpbnN0YW5jZSB0byB3aGljaCB0byBhZGQgdGhlIGVycm9yIGhhbmRsZXJcbiAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGhhbmRsZXJcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBGYXN0aWZ5ID0gcmVxdWlyZShcImZhc3RpZnlcIik7XG4gKlxuICogY29uc3QgYXBwID0gRmFzdGlmeSgpO1xuICpcbiAqIFNlbnRyeS5zZXR1cEZhc3RpZnlFcnJvckhhbmRsZXIoYXBwKTtcbiAqXG4gKiAvLyBBZGQgeW91ciByb3V0ZXMsIGV0Yy5cbiAqXG4gKiBhcHAubGlzdGVuKHsgcG9ydDogMzAwMCB9KTtcbiAqIGBgYFxuICovXG5mdW5jdGlvbiBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXIoZmFzdGlmeSwgb3B0aW9ucykge1xuICBpZiAob3B0aW9ucz8uc2hvdWxkSGFuZGxlRXJyb3IpIHtcbiAgICBnZXRGYXN0aWZ5SW50ZWdyYXRpb24oKT8uc2V0U2hvdWxkSGFuZGxlRXJyb3Iob3B0aW9ucy5zaG91bGRIYW5kbGVFcnJvcik7XG4gIH1cblxuICBjb25zdCBwbHVnaW4gPSBPYmplY3QuYXNzaWduKFxuICAgIGZ1bmN0aW9uIChmYXN0aWZ5LCBfb3B0aW9ucywgZG9uZSkge1xuICAgICAgZmFzdGlmeS5hZGRIb29rKCdvbkVycm9yJywgYXN5bmMgKHJlcXVlc3QsIHJlcGx5LCBlcnJvcikgPT4ge1xuICAgICAgICBoYW5kbGVGYXN0aWZ5RXJyb3IuY2FsbChoYW5kbGVGYXN0aWZ5RXJyb3IsIGVycm9yLCByZXF1ZXN0LCByZXBseSwgJ29uRXJyb3ItaG9vaycpO1xuICAgICAgfSk7XG4gICAgICBkb25lKCk7XG4gICAgfSxcbiAgICB7XG4gICAgICBbU3ltYm9sLmZvcignc2tpcC1vdmVycmlkZScpXTogdHJ1ZSxcbiAgICAgIFtTeW1ib2wuZm9yKCdmYXN0aWZ5LmRpc3BsYXktbmFtZScpXTogJ3NlbnRyeS1mYXN0aWZ5LWVycm9yLWhhbmRsZXInLFxuICAgIH0sXG4gICk7XG5cbiAgZmFzdGlmeS5yZWdpc3RlcihwbHVnaW4pO1xufVxuXG5mdW5jdGlvbiBhZGRGYXN0aWZ5U3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBzcGFuSlNPTiA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgY29uc3Qgc3Bhbk5hbWUgPSBzcGFuSlNPTi5kZXNjcmlwdGlvbjtcbiAgY29uc3QgYXR0cmlidXRlcyA9IHNwYW5KU09OLmRhdGE7XG5cbiAgY29uc3QgdHlwZSA9IGF0dHJpYnV0ZXNbJ2Zhc3RpZnkudHlwZSddO1xuXG4gIGNvbnN0IGlzSG9vayA9IHR5cGUgPT09ICdob29rJztcbiAgY29uc3QgaXNIYW5kbGVyID0gdHlwZSA9PT0gc3Bhbk5hbWU/LnN0YXJ0c1dpdGgoJ2hhbmRsZXIgLScpO1xuICAvLyBJbiBAZmFzdGlmeS9vdGVsIGByZXF1ZXN0LWhhbmRsZXJgIGlzIHNlcGFyYXRlZCBieSBkYXNoLCBub3QgdW5kZXJzY29yZVxuICBjb25zdCBpc1JlcXVlc3RIYW5kbGVyID0gc3Bhbk5hbWUgPT09ICdyZXF1ZXN0JyB8fCB0eXBlID09PSAncmVxdWVzdC1oYW5kbGVyJztcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIGZhc3RpZnkgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF0gfHwgKCFpc0hhbmRsZXIgJiYgIWlzUmVxdWVzdEhhbmRsZXIgJiYgIWlzSG9vaykpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBvcFByZWZpeCA9IGlzSG9vayA/ICdob29rJyA6IGlzSGFuZGxlciA/ICdtaWRkbGV3YXJlJyA6IGlzUmVxdWVzdEhhbmRsZXIgPyAncmVxdWVzdF9oYW5kbGVyJyA6ICc8dW5rbm93bj4nO1xuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU5dOiAnYXV0by5odHRwLm90ZWwuZmFzdGlmeScsXG4gICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF06IGAke29wUHJlZml4fS5mYXN0aWZ5YCxcbiAgfSk7XG5cbiAgY29uc3QgYXR0ck5hbWUgPSBhdHRyaWJ1dGVzWydmYXN0aWZ5Lm5hbWUnXSB8fCBhdHRyaWJ1dGVzWydwbHVnaW4ubmFtZSddIHx8IGF0dHJpYnV0ZXNbJ2hvb2submFtZSddO1xuICBpZiAodHlwZW9mIGF0dHJOYW1lID09PSAnc3RyaW5nJykge1xuICAgIC8vIFRyeSByZW1vdmluZyBgZmFzdGlmeSAtPiBgIGFuZCBgQGZhc3RpZnkvb3RlbCAtPiBgIHByZWZpeGVzXG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2ssIGFuZCBub3QgYWx3YXlzIHdvcmtpbmcgZm9yIGFsbCBzcGFuc1xuICAgIC8vIEJ1dCBpdCdzIHRoZSBiZXN0IHdlIGNhbiBkbyB3aXRob3V0IGEgcHJvcGVyIEFQSVxuICAgIGNvbnN0IHVwZGF0ZWROYW1lID0gYXR0ck5hbWUucmVwbGFjZSgvXmZhc3RpZnkgLT4gLywgJycpLnJlcGxhY2UoL15AZmFzdGlmeVxcL290ZWwgLT4gLywgJycpO1xuXG4gICAgc3Bhbi51cGRhdGVOYW1lKHVwZGF0ZWROYW1lKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnN0cnVtZW50Q2xpZW50KCkge1xuICBjb25zdCBjbGllbnQgPSBjb3JlLmdldENsaWVudCgpO1xuICBpZiAoY2xpZW50KSB7XG4gICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCAoc3BhbikgPT4ge1xuICAgICAgYWRkRmFzdGlmeVNwYW5BdHRyaWJ1dGVzKHNwYW4pO1xuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIGluc3RydW1lbnRPblJlcXVlc3QoZmFzdGlmeSkge1xuICBmYXN0aWZ5LmFkZEhvb2soJ29uUmVxdWVzdCcsIGFzeW5jIChyZXF1ZXN0LCBfcmVwbHkpID0+IHtcbiAgICBpZiAocmVxdWVzdC5vcGVudGVsZW1ldHJ5KSB7XG4gICAgICBjb25zdCB7IHNwYW4gfSA9IHJlcXVlc3Qub3BlbnRlbGVtZXRyeSgpO1xuXG4gICAgICBpZiAoc3Bhbikge1xuICAgICAgICBhZGRGYXN0aWZ5U3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgcm91dGVOYW1lID0gcmVxdWVzdC5yb3V0ZU9wdGlvbnM/LnVybDtcbiAgICBjb25zdCBtZXRob2QgPSByZXF1ZXN0Lm1ldGhvZCB8fCAnR0VUJztcblxuICAgIGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke3JvdXRlTmFtZX1gKTtcbiAgfSk7XG59XG5cbmV4cG9ydHMuZmFzdGlmeUludGVncmF0aW9uID0gZmFzdGlmeUludGVncmF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50RmFzdGlmeSA9IGluc3RydW1lbnRGYXN0aWZ5O1xuZXhwb3J0cy5pbnN0cnVtZW50RmFzdGlmeVYzID0gaW5zdHJ1bWVudEZhc3RpZnlWMztcbmV4cG9ydHMuc2V0dXBGYXN0aWZ5RXJyb3JIYW5kbGVyID0gc2V0dXBGYXN0aWZ5RXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\n// Vendored from https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/constants.ts\n/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nconst spanRequestSymbol = Symbol('opentelemetry.instrumentation.fastify.request_active_span');\n\nexports.spanRequestSymbol = spanRequestSymbol;\n//# sourceMappingURL=constants.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My9jb25zdGFudHMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEseUJBQXlCO0FBQ3pCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2Zhc3RpZnkvdjMvY29uc3RhbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG4vLyBWZW5kb3JlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvYmxvYi80MDdmNjE1OTFiYTY5YTM5YTY5MDgyNjQzNzlkNGQ5OGE0OGRiZWM0L3BsdWdpbnMvbm9kZS9vcGVudGVsZW1ldHJ5LWluc3RydW1lbnRhdGlvbi1mYXN0aWZ5L3NyYy9jb25zdGFudHMudHNcbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmNvbnN0IHNwYW5SZXF1ZXN0U3ltYm9sID0gU3ltYm9sKCdvcGVudGVsZW1ldHJ5Lmluc3RydW1lbnRhdGlvbi5mYXN0aWZ5LnJlcXVlc3RfYWN0aXZlX3NwYW4nKTtcblxuZXhwb3J0cy5zcGFuUmVxdWVzdFN5bWJvbCA9IHNwYW5SZXF1ZXN0U3ltYm9sO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29uc3RhbnRzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js ***!
\*********************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\n// Vendored from https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/enums/AttributeNames.ts\n//\n/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexports.AttributeNames = void 0; (function (AttributeNames) {\n const FASTIFY_NAME = 'fastify.name'; AttributeNames[\"FASTIFY_NAME\"] = FASTIFY_NAME;\n const FASTIFY_TYPE = 'fastify.type'; AttributeNames[\"FASTIFY_TYPE\"] = FASTIFY_TYPE;\n const HOOK_NAME = 'hook.name'; AttributeNames[\"HOOK_NAME\"] = HOOK_NAME;\n const PLUGIN_NAME = 'plugin.name'; AttributeNames[\"PLUGIN_NAME\"] = PLUGIN_NAME;\n})(exports.AttributeNames || (exports.AttributeNames = {}));\n\nexports.FastifyTypes = void 0; (function (FastifyTypes) {\n const MIDDLEWARE = 'middleware'; FastifyTypes[\"MIDDLEWARE\"] = MIDDLEWARE;\n const REQUEST_HANDLER = 'request_handler'; FastifyTypes[\"REQUEST_HANDLER\"] = REQUEST_HANDLER;\n})(exports.FastifyTypes || (exports.FastifyTypes = {}));\n\nexports.FastifyNames = void 0; (function (FastifyNames) {\n const MIDDLEWARE = 'middleware'; FastifyNames[\"MIDDLEWARE\"] = MIDDLEWARE;\n const REQUEST_HANDLER = 'request handler'; FastifyNames[\"REQUEST_HANDLER\"] = REQUEST_HANDLER;\n})(exports.FastifyNames || (exports.FastifyNames = {}));\n//# sourceMappingURL=AttributeNames.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My9lbnVtcy9BdHRyaWJ1dGVOYW1lcy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHNCQUFzQixXQUFXO0FBQ2pDLHVDQUF1QztBQUN2Qyx1Q0FBdUM7QUFDdkMsaUNBQWlDO0FBQ2pDLHFDQUFxQztBQUNyQyxDQUFDLDZCQUE2QixzQkFBc0IsS0FBSzs7QUFFekQsb0JBQW9CLFdBQVc7QUFDL0IsbUNBQW1DO0FBQ25DLDZDQUE2QztBQUM3QyxDQUFDLDJCQUEyQixvQkFBb0IsS0FBSzs7QUFFckQsb0JBQW9CLFdBQVc7QUFDL0IsbUNBQW1DO0FBQ25DLDZDQUE2QztBQUM3QyxDQUFDLDJCQUEyQixvQkFBb0IsS0FBSztBQUNyRCIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9mYXN0aWZ5L3YzL2VudW1zL0F0dHJpYnV0ZU5hbWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG4vLyBWZW5kb3JlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvYmxvYi80MDdmNjE1OTFiYTY5YTM5YTY5MDgyNjQzNzlkNGQ5OGE0OGRiZWM0L3BsdWdpbnMvbm9kZS9vcGVudGVsZW1ldHJ5LWluc3RydW1lbnRhdGlvbi1mYXN0aWZ5L3NyYy9lbnVtcy9BdHRyaWJ1dGVOYW1lcy50c1xuLy9cbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmV4cG9ydHMuQXR0cmlidXRlTmFtZXMgPSB2b2lkIDA7IChmdW5jdGlvbiAoQXR0cmlidXRlTmFtZXMpIHtcbiAgY29uc3QgRkFTVElGWV9OQU1FID0gJ2Zhc3RpZnkubmFtZSc7IEF0dHJpYnV0ZU5hbWVzW1wiRkFTVElGWV9OQU1FXCJdID0gRkFTVElGWV9OQU1FO1xuICBjb25zdCBGQVNUSUZZX1RZUEUgPSAnZmFzdGlmeS50eXBlJzsgQXR0cmlidXRlTmFtZXNbXCJGQVNUSUZZX1RZUEVcIl0gPSBGQVNUSUZZX1RZUEU7XG4gIGNvbnN0IEhPT0tfTkFNRSA9ICdob29rLm5hbWUnOyBBdHRyaWJ1dGVOYW1lc1tcIkhPT0tfTkFNRVwiXSA9IEhPT0tfTkFNRTtcbiAgY29uc3QgUExVR0lOX05BTUUgPSAncGx1Z2luLm5hbWUnOyBBdHRyaWJ1dGVOYW1lc1tcIlBMVUdJTl9OQU1FXCJdID0gUExVR0lOX05BTUU7XG59KShleHBvcnRzLkF0dHJpYnV0ZU5hbWVzIHx8IChleHBvcnRzLkF0dHJpYnV0ZU5hbWVzID0ge30pKTtcblxuZXhwb3J0cy5GYXN0aWZ5VHlwZXMgPSB2b2lkIDA7IChmdW5jdGlvbiAoRmFzdGlmeVR5cGVzKSB7XG4gIGNvbnN0IE1JRERMRVdBUkUgPSAnbWlkZGxld2FyZSc7IEZhc3RpZnlUeXBlc1tcIk1JRERMRVdBUkVcIl0gPSBNSURETEVXQVJFO1xuICBjb25zdCBSRVFVRVNUX0hBTkRMRVIgPSAncmVxdWVzdF9oYW5kbGVyJzsgRmFzdGlmeVR5cGVzW1wiUkVRVUVTVF9IQU5ETEVSXCJdID0gUkVRVUVTVF9IQU5ETEVSO1xufSkoZXhwb3J0cy5GYXN0aWZ5VHlwZXMgfHwgKGV4cG9ydHMuRmFzdGlmeVR5cGVzID0ge30pKTtcblxuZXhwb3J0cy5GYXN0aWZ5TmFtZXMgPSB2b2lkIDA7IChmdW5jdGlvbiAoRmFzdGlmeU5hbWVzKSB7XG4gIGNvbnN0IE1JRERMRVdBUkUgPSAnbWlkZGxld2FyZSc7IEZhc3RpZnlOYW1lc1tcIk1JRERMRVdBUkVcIl0gPSBNSURETEVXQVJFO1xuICBjb25zdCBSRVFVRVNUX0hBTkRMRVIgPSAncmVxdWVzdCBoYW5kbGVyJzsgRmFzdGlmeU5hbWVzW1wiUkVRVUVTVF9IQU5ETEVSXCJdID0gUkVRVUVTVF9IQU5ETEVSO1xufSkoZXhwb3J0cy5GYXN0aWZ5TmFtZXMgfHwgKGV4cG9ydHMuRmFzdGlmeU5hbWVzID0ge30pKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUF0dHJpYnV0ZU5hbWVzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js":
/*!****************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js ***!
\****************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst core = __webpack_require__(/*! @opentelemetry/core */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+core@2.6.1_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/core/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core$1 = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst AttributeNames = __webpack_require__(/*! ./enums/AttributeNames.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js\");\nconst utils = __webpack_require__(/*! ./utils.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js\");\n\n// Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/instrumentation.ts\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/no-this-alias */\n/* eslint-disable jsdoc/require-jsdoc */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n\n/** @knipignore */\n\nconst PACKAGE_VERSION = '0.1.0';\n\nconst PACKAGE_NAME = '@sentry/instrumentation-fastify-v3';\nconst ANONYMOUS_NAME = 'anonymous';\n\n// The instrumentation creates a span for invocations of lifecycle hook handlers\n// that take `(request, reply, ...[, done])` arguments. Currently this is all\n// lifecycle hooks except `onRequestAbort`.\n// https://fastify.dev/docs/latest/Reference/Hooks\nconst hooksNamesToWrap = new Set([\n 'onTimeout',\n 'onRequest',\n 'preParsing',\n 'preValidation',\n 'preSerialization',\n 'preHandler',\n 'onSend',\n 'onResponse',\n 'onError',\n]);\n\n/**\n * Fastify instrumentation for OpenTelemetry\n */\nclass FastifyInstrumentationV3 extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super(PACKAGE_NAME, PACKAGE_VERSION, config);\n }\n\n init() {\n return [\n new instrumentation.InstrumentationNodeModuleDefinition('fastify', ['>=3.0.0 <4'], moduleExports => {\n return this._patchConstructor(moduleExports);\n }),\n ];\n }\n\n _hookOnRequest() {\n const instrumentation = this;\n\n return function onRequest(request, reply, done) {\n if (!instrumentation.isEnabled()) {\n return done();\n }\n instrumentation._wrap(reply, 'send', instrumentation._patchSend());\n\n const anyRequest = request ;\n\n const rpcMetadata = core.getRPCMetadata(api.context.active());\n const routeName = anyRequest.routeOptions\n ? anyRequest.routeOptions.url // since fastify@4.10.0\n : request.routerPath;\n if (routeName && rpcMetadata?.type === core.RPCType.HTTP) {\n rpcMetadata.route = routeName;\n }\n\n const method = request.method || 'GET';\n\n core$1.getIsolationScope().setTransactionName(`${method} ${routeName}`);\n done();\n };\n }\n\n _wrapHandler(\n pluginName,\n hookName,\n original,\n syncFunctionWithDone,\n ) {\n const instrumentation = this;\n this._diag.debug('Patching fastify route.handler function');\n\n return function ( ...args) {\n if (!instrumentation.isEnabled()) {\n return original.apply(this, args);\n }\n\n const name = original.name || pluginName || ANONYMOUS_NAME;\n const spanName = `${AttributeNames.FastifyNames.MIDDLEWARE} - ${name}`;\n\n const reply = args[1] ;\n\n const span = utils.startSpan(reply, instrumentation.tracer, spanName, {\n [AttributeNames.AttributeNames.FASTIFY_TYPE]: AttributeNames.FastifyTypes.MIDDLEWARE,\n [AttributeNames.AttributeNames.PLUGIN_NAME]: pluginName,\n [AttributeNames.AttributeNames.HOOK_NAME]: hookName,\n });\n\n const origDone = syncFunctionWithDone && (args[args.length - 1] );\n if (origDone) {\n args[args.length - 1] = function (...doneArgs) {\n utils.endSpan(reply);\n origDone.apply(this, doneArgs);\n };\n }\n\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n return utils.safeExecuteInTheMiddleMaybePromise(\n () => {\n return original.apply(this, args);\n },\n err => {\n if (err instanceof Error) {\n span.setStatus({\n code: api.SpanStatusCode.ERROR,\n message: err.message,\n });\n span.recordException(err);\n }\n // async hooks should end the span as soon as the promise is resolved\n if (!syncFunctionWithDone) {\n utils.endSpan(reply);\n }\n },\n );\n });\n };\n }\n\n _wrapAddHook() {\n const instrumentation = this;\n this._diag.debug('Patching fastify server.addHook function');\n\n // biome-ignore lint/complexity/useArrowFunction: <explanation>\n return function (original) {\n return function wrappedAddHook( ...args) {\n const name = args[0] ;\n const handler = args[1] ;\n const pluginName = this.pluginName;\n if (!hooksNamesToWrap.has(name)) {\n return original.apply(this, args);\n }\n\n const syncFunctionWithDone =\n typeof args[args.length - 1] === 'function' && handler.constructor.name !== 'AsyncFunction';\n\n return original.apply(this, [\n name,\n instrumentation._wrapHandler(pluginName, name, handler, syncFunctionWithDone),\n ] );\n };\n };\n }\n\n _patchConstructor(moduleExports\n\n) {\n const instrumentation = this;\n\n function fastify( ...args) {\n const app = moduleExports.fastify.apply(this, args);\n app.addHook('onRequest', instrumentation._hookOnRequest());\n app.addHook('preHandler', instrumentation._hookPreHandler());\n\n instrumentClient();\n\n instrumentation._wrap(app, 'addHook', instrumentation._wrapAddHook());\n\n return app;\n }\n\n if (moduleExports.errorCodes !== undefined) {\n fastify.errorCodes = moduleExports.errorCodes;\n }\n fastify.fastify = fastify;\n fastify.default = fastify;\n return fastify;\n }\n\n _patchSend() {\n const instrumentation$1 = this;\n this._diag.debug('Patching fastify reply.send function');\n\n return function patchSend(original) {\n return function send( ...args) {\n const maybeError = args[0];\n\n if (!instrumentation$1.isEnabled()) {\n return original.apply(this, args);\n }\n\n return instrumentation.safeExecuteInTheMiddle(\n () => {\n return original.apply(this, args);\n },\n err => {\n if (!err && maybeError instanceof Error) {\n // eslint-disable-next-line no-param-reassign\n err = maybeError;\n }\n utils.endSpan(this, err);\n },\n );\n };\n };\n }\n\n _hookPreHandler() {\n const instrumentation$1 = this;\n this._diag.debug('Patching fastify preHandler function');\n\n return function preHandler( request, reply, done) {\n if (!instrumentation$1.isEnabled()) {\n return done();\n }\n const anyRequest = request ;\n\n const handler = anyRequest.routeOptions?.handler || anyRequest.context?.handler;\n const handlerName = handler?.name.startsWith('bound ') ? handler.name.substring(6) : handler?.name;\n const spanName = `${AttributeNames.FastifyNames.REQUEST_HANDLER} - ${handlerName || this.pluginName || ANONYMOUS_NAME}`;\n\n const spanAttributes = {\n [AttributeNames.AttributeNames.PLUGIN_NAME]: this.pluginName,\n [AttributeNames.AttributeNames.FASTIFY_TYPE]: AttributeNames.FastifyTypes.REQUEST_HANDLER,\n // eslint-disable-next-line deprecation/deprecation\n [semanticConventions.SEMATTRS_HTTP_ROUTE]: anyRequest.routeOptions\n ? anyRequest.routeOptions.url // since fastify@4.10.0\n : request.routerPath,\n };\n if (handlerName) {\n spanAttributes[AttributeNames.AttributeNames.FASTIFY_NAME] = handlerName;\n }\n const span = utils.startSpan(reply, instrumentation$1.tracer, spanName, spanAttributes);\n\n addFastifyV3SpanAttributes(span);\n\n const { requestHook } = instrumentation$1.getConfig();\n if (requestHook) {\n instrumentation.safeExecuteInTheMiddle(\n () => requestHook(span, { request }),\n e => {\n if (e) {\n instrumentation$1._diag.error('request hook failed', e);\n }\n },\n true,\n );\n }\n\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n done();\n });\n };\n }\n}\n\nfunction instrumentClient() {\n const client = core$1.getClient();\n if (client) {\n client.on('spanStart', (span) => {\n addFastifyV3SpanAttributes(span);\n });\n }\n}\n\nfunction addFastifyV3SpanAttributes(span) {\n const attributes = core$1.spanToJSON(span).data;\n\n // this is one of: middleware, request_handler\n const type = attributes['fastify.type'];\n\n // If this is already set, or we have no fastify span, no need to process again...\n if (attributes[core$1.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core$1.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.fastify',\n [core$1.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.fastify`,\n });\n\n // Also update the name, we don't need to \"middleware - \" prefix\n const name = attributes['fastify.name'] || attributes['plugin.name'] || attributes['hook.name'];\n if (typeof name === 'string') {\n // Try removing `fastify -> ` and `@fastify/otel -> ` prefixes\n // This is a bit of a hack, and not always working for all spans\n // But it's the best we can do without a proper API\n const updatedName = name.replace(/^fastify -> /, '').replace(/^@fastify\\/otel -> /, '');\n\n span.updateName(updatedName);\n }\n}\n\nexports.FastifyInstrumentationV3 = FastifyInstrumentationV3;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My9pbnN0cnVtZW50YXRpb24uanMiLCJtYXBwaW5ncyI6IkFBQUEsQ0FBQyxvREFBb0QseUNBQXlDLDBDQUEwQyw4Q0FBOEMsb0RBQW9ELG1EQUFtRCxxREFBcUQsaUJBQWlCOztBQUVuVyxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLGFBQWEsbUJBQU8sQ0FBQyw4SkFBcUI7QUFDMUMsd0JBQXdCLG1CQUFPLENBQUMsaU1BQWdDO0FBQ2hFLDRCQUE0QixtQkFBTyxDQUFDLHNMQUFxQztBQUN6RSxlQUFlLG1CQUFPLENBQUMsa0hBQWM7QUFDckMsdUJBQXVCLG1CQUFPLENBQUMsOEtBQTJCO0FBQzFELGNBQWMsbUJBQU8sQ0FBQyxnSkFBWTs7QUFFbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsdURBQXVELFFBQVEsRUFBRSxVQUFVO0FBQzNFO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsMEJBQTBCLHdDQUF3QyxJQUFJLEtBQUs7O0FBRTNFOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsMEJBQTBCLDZDQUE2QyxJQUFJLGlEQUFpRDs7QUFFNUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBLGNBQWMsY0FBYztBQUM1QjtBQUNBO0FBQ0Esb0NBQW9DLFNBQVM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDhDQUE4QyxLQUFLO0FBQ25ELEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLGdDQUFnQztBQUNoQyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9mYXN0aWZ5L3YzL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2NvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3Qgc2VtYW50aWNDb252ZW50aW9ucyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3NlbWFudGljLWNvbnZlbnRpb25zJyk7XG5jb25zdCBjb3JlJDEgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IEF0dHJpYnV0ZU5hbWVzID0gcmVxdWlyZSgnLi9lbnVtcy9BdHRyaWJ1dGVOYW1lcy5qcycpO1xuY29uc3QgdXRpbHMgPSByZXF1aXJlKCcuL3V0aWxzLmpzJyk7XG5cbi8vIFZlbmRvcmVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvYmxvYi80MDdmNjE1OTFiYTY5YTM5YTY5MDgyNjQzNzlkNGQ5OGE0OGRiZWM0L3BsdWdpbnMvbm9kZS9vcGVudGVsZW1ldHJ5LWluc3RydW1lbnRhdGlvbi1mYXN0aWZ5L3NyYy9pbnN0cnVtZW50YXRpb24udHNcbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBqc2RvYy9yZXF1aXJlLWpzZG9jICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGUgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtbWVtYmVyLWFjY2VzcyAqL1xuXG4vKiogQGtuaXBpZ25vcmUgKi9cblxuY29uc3QgUEFDS0FHRV9WRVJTSU9OID0gJzAuMS4wJztcblxuY29uc3QgUEFDS0FHRV9OQU1FID0gJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWZhc3RpZnktdjMnO1xuY29uc3QgQU5PTllNT1VTX05BTUUgPSAnYW5vbnltb3VzJztcblxuLy8gVGhlIGluc3RydW1lbnRhdGlvbiBjcmVhdGVzIGEgc3BhbiBmb3IgaW52b2NhdGlvbnMgb2YgbGlmZWN5Y2xlIGhvb2sgaGFuZGxlcnNcbi8vIHRoYXQgdGFrZSBgKHJlcXVlc3QsIHJlcGx5LCAuLi5bLCBkb25lXSlgIGFyZ3VtZW50cy4gQ3VycmVudGx5IHRoaXMgaXMgYWxsXG4vLyBsaWZlY3ljbGUgaG9va3MgZXhjZXB0IGBvblJlcXVlc3RBYm9ydGAuXG4vLyBodHRwczovL2Zhc3RpZnkuZGV2L2RvY3MvbGF0ZXN0L1JlZmVyZW5jZS9Ib29rc1xuY29uc3QgaG9va3NOYW1lc1RvV3JhcCA9IG5ldyBTZXQoW1xuICAnb25UaW1lb3V0JyxcbiAgJ29uUmVxdWVzdCcsXG4gICdwcmVQYXJzaW5nJyxcbiAgJ3ByZVZhbGlkYXRpb24nLFxuICAncHJlU2VyaWFsaXphdGlvbicsXG4gICdwcmVIYW5kbGVyJyxcbiAgJ29uU2VuZCcsXG4gICdvblJlc3BvbnNlJyxcbiAgJ29uRXJyb3InLFxuXSk7XG5cbi8qKlxuICogRmFzdGlmeSBpbnN0cnVtZW50YXRpb24gZm9yIE9wZW5UZWxlbWV0cnlcbiAqL1xuY2xhc3MgRmFzdGlmeUluc3RydW1lbnRhdGlvblYzIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0ge30pIHtcbiAgICBzdXBlcihQQUNLQUdFX05BTUUsIFBBQ0tBR0VfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gICBpbml0KCkge1xuICAgIHJldHVybiBbXG4gICAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKCdmYXN0aWZ5JywgWyc+PTMuMC4wIDw0J10sIG1vZHVsZUV4cG9ydHMgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGF0Y2hDb25zdHJ1Y3Rvcihtb2R1bGVFeHBvcnRzKTtcbiAgICAgIH0pLFxuICAgIF07XG4gIH1cblxuICAgX2hvb2tPblJlcXVlc3QoKSB7XG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gdGhpcztcblxuICAgIHJldHVybiBmdW5jdGlvbiBvblJlcXVlc3QocmVxdWVzdCwgcmVwbHksIGRvbmUpIHtcbiAgICAgIGlmICghaW5zdHJ1bWVudGF0aW9uLmlzRW5hYmxlZCgpKSB7XG4gICAgICAgIHJldHVybiBkb25lKCk7XG4gICAgICB9XG4gICAgICBpbnN0cnVtZW50YXRpb24uX3dyYXAocmVwbHksICdzZW5kJywgaW5zdHJ1bWVudGF0aW9uLl9wYXRjaFNlbmQoKSk7XG5cbiAgICAgIGNvbnN0IGFueVJlcXVlc3QgPSByZXF1ZXN0IDtcblxuICAgICAgY29uc3QgcnBjTWV0YWRhdGEgPSBjb3JlLmdldFJQQ01ldGFkYXRhKGFwaS5jb250ZXh0LmFjdGl2ZSgpKTtcbiAgICAgIGNvbnN0IHJvdXRlTmFtZSA9IGFueVJlcXVlc3Qucm91dGVPcHRpb25zXG4gICAgICAgID8gYW55UmVxdWVzdC5yb3V0ZU9wdGlvbnMudXJsIC8vIHNpbmNlIGZhc3RpZnlANC4xMC4wXG4gICAgICAgIDogcmVxdWVzdC5yb3V0ZXJQYXRoO1xuICAgICAgaWYgKHJvdXRlTmFtZSAmJiBycGNNZXRhZGF0YT8udHlwZSA9PT0gY29yZS5SUENUeXBlLkhUVFApIHtcbiAgICAgICAgcnBjTWV0YWRhdGEucm91dGUgPSByb3V0ZU5hbWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1ldGhvZCA9IHJlcXVlc3QubWV0aG9kIHx8ICdHRVQnO1xuXG4gICAgICBjb3JlJDEuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke3JvdXRlTmFtZX1gKTtcbiAgICAgIGRvbmUoKTtcbiAgICB9O1xuICB9XG5cbiAgIF93cmFwSGFuZGxlcihcbiAgICBwbHVnaW5OYW1lLFxuICAgIGhvb2tOYW1lLFxuICAgIG9yaWdpbmFsLFxuICAgIHN5bmNGdW5jdGlvbldpdGhEb25lLFxuICApIHtcbiAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSB0aGlzO1xuICAgIHRoaXMuX2RpYWcuZGVidWcoJ1BhdGNoaW5nIGZhc3RpZnkgcm91dGUuaGFuZGxlciBmdW5jdGlvbicpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uICggLi4uYXJncykge1xuICAgICAgaWYgKCFpbnN0cnVtZW50YXRpb24uaXNFbmFibGVkKCkpIHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBuYW1lID0gb3JpZ2luYWwubmFtZSB8fCBwbHVnaW5OYW1lIHx8IEFOT05ZTU9VU19OQU1FO1xuICAgICAgY29uc3Qgc3Bhbk5hbWUgPSBgJHtBdHRyaWJ1dGVOYW1lcy5GYXN0aWZ5TmFtZXMuTUlERExFV0FSRX0gLSAke25hbWV9YDtcblxuICAgICAgY29uc3QgcmVwbHkgPSBhcmdzWzFdIDtcblxuICAgICAgY29uc3Qgc3BhbiA9IHV0aWxzLnN0YXJ0U3BhbihyZXBseSwgaW5zdHJ1bWVudGF0aW9uLnRyYWNlciwgc3Bhbk5hbWUsIHtcbiAgICAgICAgW0F0dHJpYnV0ZU5hbWVzLkF0dHJpYnV0ZU5hbWVzLkZBU1RJRllfVFlQRV06IEF0dHJpYnV0ZU5hbWVzLkZhc3RpZnlUeXBlcy5NSURETEVXQVJFLFxuICAgICAgICBbQXR0cmlidXRlTmFtZXMuQXR0cmlidXRlTmFtZXMuUExVR0lOX05BTUVdOiBwbHVnaW5OYW1lLFxuICAgICAgICBbQXR0cmlidXRlTmFtZXMuQXR0cmlidXRlTmFtZXMuSE9PS19OQU1FXTogaG9va05hbWUsXG4gICAgICB9KTtcblxuICAgICAgY29uc3Qgb3JpZ0RvbmUgPSBzeW5jRnVuY3Rpb25XaXRoRG9uZSAmJiAoYXJnc1thcmdzLmxlbmd0aCAtIDFdICk7XG4gICAgICBpZiAob3JpZ0RvbmUpIHtcbiAgICAgICAgYXJnc1thcmdzLmxlbmd0aCAtIDFdID0gZnVuY3Rpb24gKC4uLmRvbmVBcmdzKSB7XG4gICAgICAgICAgdXRpbHMuZW5kU3BhbihyZXBseSk7XG4gICAgICAgICAgb3JpZ0RvbmUuYXBwbHkodGhpcywgZG9uZUFyZ3MpO1xuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYXBpLmNvbnRleHQud2l0aChhcGkudHJhY2Uuc2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSwgc3BhbiksICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHV0aWxzLnNhZmVFeGVjdXRlSW5UaGVNaWRkbGVNYXliZVByb21pc2UoXG4gICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgICBzcGFuLnNldFN0YXR1cyh7XG4gICAgICAgICAgICAgICAgY29kZTogYXBpLlNwYW5TdGF0dXNDb2RlLkVSUk9SLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGVyci5tZXNzYWdlLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgc3Bhbi5yZWNvcmRFeGNlcHRpb24oZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGFzeW5jIGhvb2tzIHNob3VsZCBlbmQgdGhlIHNwYW4gYXMgc29vbiBhcyB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZFxuICAgICAgICAgICAgaWYgKCFzeW5jRnVuY3Rpb25XaXRoRG9uZSkge1xuICAgICAgICAgICAgICB1dGlscy5lbmRTcGFuKHJlcGx5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfTtcbiAgfVxuXG4gICBfd3JhcEFkZEhvb2soKSB7XG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gdGhpcztcbiAgICB0aGlzLl9kaWFnLmRlYnVnKCdQYXRjaGluZyBmYXN0aWZ5IHNlcnZlci5hZGRIb29rIGZ1bmN0aW9uJyk7XG5cbiAgICAvLyBiaW9tZS1pZ25vcmUgbGludC9jb21wbGV4aXR5L3VzZUFycm93RnVuY3Rpb246IDxleHBsYW5hdGlvbj5cbiAgICByZXR1cm4gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gd3JhcHBlZEFkZEhvb2soIC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgbmFtZSA9IGFyZ3NbMF0gO1xuICAgICAgICBjb25zdCBoYW5kbGVyID0gYXJnc1sxXSA7XG4gICAgICAgIGNvbnN0IHBsdWdpbk5hbWUgPSB0aGlzLnBsdWdpbk5hbWU7XG4gICAgICAgIGlmICghaG9va3NOYW1lc1RvV3JhcC5oYXMobmFtZSkpIHtcbiAgICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzeW5jRnVuY3Rpb25XaXRoRG9uZSA9XG4gICAgICAgICAgdHlwZW9mIGFyZ3NbYXJncy5sZW5ndGggLSAxXSA9PT0gJ2Z1bmN0aW9uJyAmJiBoYW5kbGVyLmNvbnN0cnVjdG9yLm5hbWUgIT09ICdBc3luY0Z1bmN0aW9uJztcblxuICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgW1xuICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihwbHVnaW5OYW1lLCBuYW1lLCBoYW5kbGVyLCBzeW5jRnVuY3Rpb25XaXRoRG9uZSksXG4gICAgICAgIF0gKTtcbiAgICAgIH07XG4gICAgfTtcbiAgfVxuXG4gICBfcGF0Y2hDb25zdHJ1Y3Rvcihtb2R1bGVFeHBvcnRzXG5cbikge1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICBmdW5jdGlvbiBmYXN0aWZ5KCAuLi5hcmdzKSB7XG4gICAgICBjb25zdCBhcHAgPSBtb2R1bGVFeHBvcnRzLmZhc3RpZnkuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICBhcHAuYWRkSG9vaygnb25SZXF1ZXN0JywgaW5zdHJ1bWVudGF0aW9uLl9ob29rT25SZXF1ZXN0KCkpO1xuICAgICAgYXBwLmFkZEhvb2soJ3ByZUhhbmRsZXInLCBpbnN0cnVtZW50YXRpb24uX2hvb2tQcmVIYW5kbGVyKCkpO1xuXG4gICAgICBpbnN0cnVtZW50Q2xpZW50KCk7XG5cbiAgICAgIGluc3RydW1lbnRhdGlvbi5fd3JhcChhcHAsICdhZGRIb29rJywgaW5zdHJ1bWVudGF0aW9uLl93cmFwQWRkSG9vaygpKTtcblxuICAgICAgcmV0dXJuIGFwcDtcbiAgICB9XG5cbiAgICBpZiAobW9kdWxlRXhwb3J0cy5lcnJvckNvZGVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGZhc3RpZnkuZXJyb3JDb2RlcyA9IG1vZHVsZUV4cG9ydHMuZXJyb3JDb2RlcztcbiAgICB9XG4gICAgZmFzdGlmeS5mYXN0aWZ5ID0gZmFzdGlmeTtcbiAgICBmYXN0aWZ5LmRlZmF1bHQgPSBmYXN0aWZ5O1xuICAgIHJldHVybiBmYXN0aWZ5O1xuICB9XG5cbiAgIF9wYXRjaFNlbmQoKSB7XG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uJDEgPSB0aGlzO1xuICAgIHRoaXMuX2RpYWcuZGVidWcoJ1BhdGNoaW5nIGZhc3RpZnkgcmVwbHkuc2VuZCBmdW5jdGlvbicpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIHBhdGNoU2VuZChvcmlnaW5hbCkge1xuICAgICAgcmV0dXJuIGZ1bmN0aW9uIHNlbmQoIC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgbWF5YmVFcnJvciA9IGFyZ3NbMF07XG5cbiAgICAgICAgaWYgKCFpbnN0cnVtZW50YXRpb24kMS5pc0VuYWJsZWQoKSkge1xuICAgICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpbnN0cnVtZW50YXRpb24uc2FmZUV4ZWN1dGVJblRoZU1pZGRsZShcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnIgPT4ge1xuICAgICAgICAgICAgaWYgKCFlcnIgJiYgbWF5YmVFcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgICAgICAgICAgICBlcnIgPSBtYXliZUVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdXRpbHMuZW5kU3Bhbih0aGlzLCBlcnIpO1xuICAgICAgICAgIH0sXG4gICAgICAgICk7XG4gICAgICB9O1xuICAgIH07XG4gIH1cblxuICAgX2hvb2tQcmVIYW5kbGVyKCkge1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiQxID0gdGhpcztcbiAgICB0aGlzLl9kaWFnLmRlYnVnKCdQYXRjaGluZyBmYXN0aWZ5IHByZUhhbmRsZXIgZnVuY3Rpb24nKTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBwcmVIYW5kbGVyKCByZXF1ZXN0LCByZXBseSwgZG9uZSkge1xuICAgICAgaWYgKCFpbnN0cnVtZW50YXRpb24kMS5pc0VuYWJsZWQoKSkge1xuICAgICAgICByZXR1cm4gZG9uZSgpO1xuICAgICAgfVxuICAgICAgY29uc3QgYW55UmVxdWVzdCA9IHJlcXVlc3QgO1xuXG4gICAgICBjb25zdCBoYW5kbGVyID0gYW55UmVxdWVzdC5yb3V0ZU9wdGlvbnM/LmhhbmRsZXIgfHwgYW55UmVxdWVzdC5jb250ZXh0Py5oYW5kbGVyO1xuICAgICAgY29uc3QgaGFuZGxlck5hbWUgPSBoYW5kbGVyPy5uYW1lLnN0YXJ0c1dpdGgoJ2JvdW5kICcpID8gaGFuZGxlci5uYW1lLnN1YnN0cmluZyg2KSA6IGhhbmRsZXI/Lm5hbWU7XG4gICAgICBjb25zdCBzcGFuTmFtZSA9IGAke0F0dHJpYnV0ZU5hbWVzLkZhc3RpZnlOYW1lcy5SRVFVRVNUX0hBTkRMRVJ9IC0gJHtoYW5kbGVyTmFtZSB8fCB0aGlzLnBsdWdpbk5hbWUgfHwgQU5PTllNT1VTX05BTUV9YDtcblxuICAgICAgY29uc3Qgc3BhbkF0dHJpYnV0ZXMgPSB7XG4gICAgICAgIFtBdHRyaWJ1dGVOYW1lcy5BdHRyaWJ1dGVOYW1lcy5QTFVHSU5fTkFNRV06IHRoaXMucGx1Z2luTmFtZSxcbiAgICAgICAgW0F0dHJpYnV0ZU5hbWVzLkF0dHJpYnV0ZU5hbWVzLkZBU1RJRllfVFlQRV06IEF0dHJpYnV0ZU5hbWVzLkZhc3RpZnlUeXBlcy5SRVFVRVNUX0hBTkRMRVIsXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkZXByZWNhdGlvbi9kZXByZWNhdGlvblxuICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5TRU1BVFRSU19IVFRQX1JPVVRFXTogYW55UmVxdWVzdC5yb3V0ZU9wdGlvbnNcbiAgICAgICAgICA/IGFueVJlcXVlc3Qucm91dGVPcHRpb25zLnVybCAvLyBzaW5jZSBmYXN0aWZ5QDQuMTAuMFxuICAgICAgICAgIDogcmVxdWVzdC5yb3V0ZXJQYXRoLFxuICAgICAgfTtcbiAgICAgIGlmIChoYW5kbGVyTmFtZSkge1xuICAgICAgICBzcGFuQXR0cmlidXRlc1tBdHRyaWJ1dGVOYW1lcy5BdHRyaWJ1dGVOYW1lcy5GQVNUSUZZX05BTUVdID0gaGFuZGxlck5hbWU7XG4gICAgICB9XG4gICAgICBjb25zdCBzcGFuID0gdXRpbHMuc3RhcnRTcGFuKHJlcGx5LCBpbnN0cnVtZW50YXRpb24kMS50cmFjZXIsIHNwYW5OYW1lLCBzcGFuQXR0cmlidXRlcyk7XG5cbiAgICAgIGFkZEZhc3RpZnlWM1NwYW5BdHRyaWJ1dGVzKHNwYW4pO1xuXG4gICAgICBjb25zdCB7IHJlcXVlc3RIb29rIH0gPSBpbnN0cnVtZW50YXRpb24kMS5nZXRDb25maWcoKTtcbiAgICAgIGlmIChyZXF1ZXN0SG9vaykge1xuICAgICAgICBpbnN0cnVtZW50YXRpb24uc2FmZUV4ZWN1dGVJblRoZU1pZGRsZShcbiAgICAgICAgICAoKSA9PiByZXF1ZXN0SG9vayhzcGFuLCB7IHJlcXVlc3QgfSksXG4gICAgICAgICAgZSA9PiB7XG4gICAgICAgICAgICBpZiAoZSkge1xuICAgICAgICAgICAgICBpbnN0cnVtZW50YXRpb24kMS5fZGlhZy5lcnJvcigncmVxdWVzdCBob29rIGZhaWxlZCcsIGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFwaS5jb250ZXh0LndpdGgoYXBpLnRyYWNlLnNldFNwYW4oYXBpLmNvbnRleHQuYWN0aXZlKCksIHNwYW4pLCAoKSA9PiB7XG4gICAgICAgIGRvbmUoKTtcbiAgICAgIH0pO1xuICAgIH07XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5zdHJ1bWVudENsaWVudCgpIHtcbiAgY29uc3QgY2xpZW50ID0gY29yZSQxLmdldENsaWVudCgpO1xuICBpZiAoY2xpZW50KSB7XG4gICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCAoc3BhbikgPT4ge1xuICAgICAgYWRkRmFzdGlmeVYzU3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gYWRkRmFzdGlmeVYzU3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBhdHRyaWJ1dGVzID0gY29yZSQxLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcblxuICAvLyB0aGlzIGlzIG9uZSBvZjogbWlkZGxld2FyZSwgcmVxdWVzdF9oYW5kbGVyXG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydmYXN0aWZ5LnR5cGUnXTtcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIGZhc3RpZnkgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUkMS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QXSB8fCAhdHlwZSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgW2NvcmUkMS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTl06ICdhdXRvLmh0dHAub3RlbC5mYXN0aWZ5JyxcbiAgICBbY29yZSQxLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiBgJHt0eXBlfS5mYXN0aWZ5YCxcbiAgfSk7XG5cbiAgLy8gQWxzbyB1cGRhdGUgdGhlIG5hbWUsIHdlIGRvbid0IG5lZWQgdG8gXCJtaWRkbGV3YXJlIC0gXCIgcHJlZml4XG4gIGNvbnN0IG5hbWUgPSBhdHRyaWJ1dGVzWydmYXN0aWZ5Lm5hbWUnXSB8fCBhdHRyaWJ1dGVzWydwbHVnaW4ubmFtZSddIHx8IGF0dHJpYnV0ZXNbJ2hvb2submFtZSddO1xuICBpZiAodHlwZW9mIG5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgLy8gVHJ5IHJlbW92aW5nIGBmYXN0aWZ5IC0+IGAgYW5kIGBAZmFzdGlmeS9vdGVsIC0+IGAgcHJlZml4ZXNcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjaywgYW5kIG5vdCBhbHdheXMgd29ya2luZyBmb3IgYWxsIHNwYW5zXG4gICAgLy8gQnV0IGl0J3MgdGhlIGJlc3Qgd2UgY2FuIGRvIHdpdGhvdXQgYSBwcm9wZXIgQVBJXG4gICAgY29uc3QgdXBkYXRlZE5hbWUgPSBuYW1lLnJlcGxhY2UoL15mYXN0aWZ5IC0+IC8sICcnKS5yZXBsYWNlKC9eQGZhc3RpZnlcXC9vdGVsIC0+IC8sICcnKTtcblxuICAgIHNwYW4udXBkYXRlTmFtZSh1cGRhdGVkTmFtZSk7XG4gIH1cbn1cblxuZXhwb3J0cy5GYXN0aWZ5SW5zdHJ1bWVudGF0aW9uVjMgPSBGYXN0aWZ5SW5zdHJ1bWVudGF0aW9uVjM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js\");\n\n// Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/utils.ts\n/* eslint-disable jsdoc/require-jsdoc */\n/* eslint-disable @typescript-eslint/no-dynamic-delete */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n/**\n * Starts Span\n * @param reply - reply function\n * @param tracer - tracer\n * @param spanName - span name\n * @param spanAttributes - span attributes\n */\nfunction startSpan(\n reply,\n tracer,\n spanName,\n spanAttributes = {},\n) {\n const span = tracer.startSpan(spanName, { attributes: spanAttributes });\n\n const spans = reply[constants.spanRequestSymbol] || [];\n spans.push(span);\n\n Object.defineProperty(reply, constants.spanRequestSymbol, {\n enumerable: false,\n configurable: true,\n value: spans,\n });\n\n return span;\n}\n\n/**\n * Ends span\n * @param reply - reply function\n * @param err - error\n */\nfunction endSpan(reply, err) {\n const spans = reply[constants.spanRequestSymbol] || [];\n // there is no active span, or it has already ended\n if (!spans.length) {\n return;\n }\n // biome-ignore lint/complexity/noForEach: <explanation>\n spans.forEach((span) => {\n if (err) {\n span.setStatus({\n code: api.SpanStatusCode.ERROR,\n message: err.message,\n });\n span.recordException(err);\n }\n span.end();\n });\n delete reply[constants.spanRequestSymbol];\n}\n\n// @TODO after approve add this to instrumentation package and replace usage\n// when it will be released\n\n/**\n * This function handles the missing case from instrumentation package when\n * execute can either return a promise or void. And using async is not an\n * option as it is producing unwanted side effects.\n * @param execute - function to be executed\n * @param onFinish - function called when function executed\n * @param preventThrowingError - prevent to throw error when execute\n * function fails\n */\n\nfunction safeExecuteInTheMiddleMaybePromise(\n execute,\n onFinish,\n preventThrowingError,\n) {\n let error;\n let result = undefined;\n try {\n result = execute();\n\n if (isPromise(result)) {\n result.then(\n res => onFinish(undefined, res),\n err => onFinish(err),\n );\n }\n } catch (e) {\n error = e;\n } finally {\n if (!isPromise(result)) {\n onFinish(error, result);\n if (error && true) {\n // eslint-disable-next-line no-unsafe-finally\n throw error;\n }\n }\n // eslint-disable-next-line no-unsafe-finally\n return result;\n }\n}\n\nfunction isPromise(val) {\n return (\n (typeof val === 'object' && val && typeof Object.getOwnPropertyDescriptor(val, 'then')?.value === 'function') ||\n false\n );\n}\n\nexports.endSpan = endSpan;\nexports.safeExecuteInTheMiddleMaybePromise = safeExecuteInTheMiddleMaybePromise;\nexports.startSpan = startSpan;\n//# sourceMappingURL=utils.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My91dGlscy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLGtCQUFrQixtQkFBTyxDQUFDLHdKQUFnQjs7QUFFMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0EsNENBQTRDLDRCQUE0Qjs7QUFFeEU7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsZUFBZTtBQUNmLDBDQUEwQztBQUMxQyxpQkFBaUI7QUFDakIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My91dGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCBjb25zdGFudHMgPSByZXF1aXJlKCcuL2NvbnN0YW50cy5qcycpO1xuXG4vLyBWZW5kb3JlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vb3Blbi10ZWxlbWV0cnkvb3BlbnRlbGVtZXRyeS1qcy1jb250cmliL2Jsb2IvNDA3ZjYxNTkxYmE2OWEzOWE2OTA4MjY0Mzc5ZDRkOThhNDhkYmVjNC9wbHVnaW5zL25vZGUvb3BlbnRlbGVtZXRyeS1pbnN0cnVtZW50YXRpb24tZmFzdGlmeS9zcmMvdXRpbHMudHNcbi8qIGVzbGludC1kaXNhYmxlIGpzZG9jL3JlcXVpcmUtanNkb2MgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1keW5hbWljLWRlbGV0ZSAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1tZW1iZXItYWNjZXNzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGUgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cblxuLyoqXG4gKiBTdGFydHMgU3BhblxuICogQHBhcmFtIHJlcGx5IC0gcmVwbHkgZnVuY3Rpb25cbiAqIEBwYXJhbSB0cmFjZXIgLSB0cmFjZXJcbiAqIEBwYXJhbSBzcGFuTmFtZSAtIHNwYW4gbmFtZVxuICogQHBhcmFtIHNwYW5BdHRyaWJ1dGVzIC0gc3BhbiBhdHRyaWJ1dGVzXG4gKi9cbmZ1bmN0aW9uIHN0YXJ0U3BhbihcbiAgcmVwbHksXG4gIHRyYWNlcixcbiAgc3Bhbk5hbWUsXG4gIHNwYW5BdHRyaWJ1dGVzID0ge30sXG4pIHtcbiAgY29uc3Qgc3BhbiA9IHRyYWNlci5zdGFydFNwYW4oc3Bhbk5hbWUsIHsgYXR0cmlidXRlczogc3BhbkF0dHJpYnV0ZXMgfSk7XG5cbiAgY29uc3Qgc3BhbnMgPSByZXBseVtjb25zdGFudHMuc3BhblJlcXVlc3RTeW1ib2xdIHx8IFtdO1xuICBzcGFucy5wdXNoKHNwYW4pO1xuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyZXBseSwgY29uc3RhbnRzLnNwYW5SZXF1ZXN0U3ltYm9sLCB7XG4gICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiBzcGFucyxcbiAgfSk7XG5cbiAgcmV0dXJuIHNwYW47XG59XG5cbi8qKlxuICogRW5kcyBzcGFuXG4gKiBAcGFyYW0gcmVwbHkgLSByZXBseSBmdW5jdGlvblxuICogQHBhcmFtIGVyciAtIGVycm9yXG4gKi9cbmZ1bmN0aW9uIGVuZFNwYW4ocmVwbHksIGVycikge1xuICBjb25zdCBzcGFucyA9IHJlcGx5W2NvbnN0YW50cy5zcGFuUmVxdWVzdFN5bWJvbF0gfHwgW107XG4gIC8vIHRoZXJlIGlzIG5vIGFjdGl2ZSBzcGFuLCBvciBpdCBoYXMgYWxyZWFkeSBlbmRlZFxuICBpZiAoIXNwYW5zLmxlbmd0aCkge1xuICAgIHJldHVybjtcbiAgfVxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9jb21wbGV4aXR5L25vRm9yRWFjaDogPGV4cGxhbmF0aW9uPlxuICBzcGFucy5mb3JFYWNoKChzcGFuKSA9PiB7XG4gICAgaWYgKGVycikge1xuICAgICAgc3Bhbi5zZXRTdGF0dXMoe1xuICAgICAgICBjb2RlOiBhcGkuU3BhblN0YXR1c0NvZGUuRVJST1IsXG4gICAgICAgIG1lc3NhZ2U6IGVyci5tZXNzYWdlLFxuICAgICAgfSk7XG4gICAgICBzcGFuLnJlY29yZEV4Y2VwdGlvbihlcnIpO1xuICAgIH1cbiAgICBzcGFuLmVuZCgpO1xuICB9KTtcbiAgZGVsZXRlIHJlcGx5W2NvbnN0YW50cy5zcGFuUmVxdWVzdFN5bWJvbF07XG59XG5cbi8vIEBUT0RPIGFmdGVyIGFwcHJvdmUgYWRkIHRoaXMgdG8gaW5zdHJ1bWVudGF0aW9uIHBhY2thZ2UgYW5kIHJlcGxhY2UgdXNhZ2Vcbi8vIHdoZW4gaXQgd2lsbCBiZSByZWxlYXNlZFxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaGFuZGxlcyB0aGUgbWlzc2luZyBjYXNlIGZyb20gaW5zdHJ1bWVudGF0aW9uIHBhY2thZ2Ugd2hlblxuICogZXhlY3V0ZSBjYW4gZWl0aGVyIHJldHVybiBhIHByb21pc2Ugb3Igdm9pZC4gQW5kIHVzaW5nIGFzeW5jIGlzIG5vdCBhblxuICogb3B0aW9uIGFzIGl0IGlzIHByb2R1Y2luZyB1bndhbnRlZCBzaWRlIGVmZmVjdHMuXG4gKiBAcGFyYW0gZXhlY3V0ZSAtIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkXG4gKiBAcGFyYW0gb25GaW5pc2ggLSBmdW5jdGlvbiBjYWxsZWQgd2hlbiBmdW5jdGlvbiBleGVjdXRlZFxuICogQHBhcmFtIHByZXZlbnRUaHJvd2luZ0Vycm9yIC0gcHJldmVudCB0byB0aHJvdyBlcnJvciB3aGVuIGV4ZWN1dGVcbiAqIGZ1bmN0aW9uIGZhaWxzXG4gKi9cblxuZnVuY3Rpb24gc2FmZUV4ZWN1dGVJblRoZU1pZGRsZU1heWJlUHJvbWlzZShcbiAgZXhlY3V0ZSxcbiAgb25GaW5pc2gsXG4gIHByZXZlbnRUaHJvd2luZ0Vycm9yLFxuKSB7XG4gIGxldCBlcnJvcjtcbiAgbGV0IHJlc3VsdCA9IHVuZGVmaW5lZDtcbiAgdHJ5IHtcbiAgICByZXN1bHQgPSBleGVjdXRlKCk7XG5cbiAgICBpZiAoaXNQcm9taXNlKHJlc3VsdCkpIHtcbiAgICAgIHJlc3VsdC50aGVuKFxuICAgICAgICByZXMgPT4gb25GaW5pc2godW5kZWZpbmVkLCByZXMpLFxuICAgICAgICBlcnIgPT4gb25GaW5pc2goZXJyKSxcbiAgICAgICk7XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgZXJyb3IgPSBlO1xuICB9IGZpbmFsbHkge1xuICAgIGlmICghaXNQcm9taXNlKHJlc3VsdCkpIHtcbiAgICAgIG9uRmluaXNoKGVycm9yLCByZXN1bHQpO1xuICAgICAgaWYgKGVycm9yICYmIHRydWUpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1maW5hbGx5XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5zYWZlLWZpbmFsbHlcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzUHJvbWlzZSh2YWwpIHtcbiAgcmV0dXJuIChcbiAgICAodHlwZW9mIHZhbCA9PT0gJ29iamVjdCcgJiYgdmFsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbCwgJ3RoZW4nKT8udmFsdWUgPT09ICdmdW5jdGlvbicpIHx8XG4gICAgZmFsc2VcbiAgKTtcbn1cblxuZXhwb3J0cy5lbmRTcGFuID0gZW5kU3BhbjtcbmV4cG9ydHMuc2FmZUV4ZWN1dGVJblRoZU1pZGRsZU1heWJlUHJvbWlzZSA9IHNhZmVFeGVjdXRlSW5UaGVNaWRkbGVNYXliZVByb21pc2U7XG5leHBvcnRzLnN0YXJ0U3BhbiA9IHN0YXJ0U3Bhbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWxzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js":
/*!*******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js ***!
\*******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst firebaseInstrumentation = __webpack_require__(/*! ./otel/firebaseInstrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js\");\n\nconst INTEGRATION_NAME = 'Firebase';\n\nconst config = {\n firestoreSpanCreationHook: span => {\n nodeCore.addOriginToSpan(span, 'auto.firebase.otel.firestore');\n\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, 'db.query');\n },\n functions: {\n requestHook: span => {\n nodeCore.addOriginToSpan(span, 'auto.firebase.otel.functions');\n\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, 'http.request');\n },\n errorHook: async (_, error) => {\n if (error) {\n core.captureException(error, {\n mechanism: {\n type: 'auto.firebase.otel.functions',\n handled: false,\n },\n });\n await core.flush(2000);\n }\n },\n },\n};\n\nconst instrumentFirebase = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new firebaseInstrumentation.FirebaseInstrumentation(config));\n\nconst _firebaseIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentFirebase();\n },\n };\n}) ;\n\nconst firebaseIntegration = core.defineIntegration(_firebaseIntegration);\n\nexports.firebaseIntegration = firebaseIntegration;\nexports.instrumentFirebase = instrumentFirebase;\n//# sourceMappingURL=firebase.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2UvZmlyZWJhc2UuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxnQ0FBZ0MsbUJBQU8sQ0FBQyw0TEFBbUM7O0FBRTNFOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYLFNBQVM7QUFDVDtBQUNBO0FBQ0EsS0FBSztBQUNMLEdBQUc7QUFDSDs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDs7QUFFQSwyQkFBMkI7QUFDM0IsMEJBQTBCO0FBQzFCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2ZpcmViYXNlL2ZpcmViYXNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBmaXJlYmFzZUluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vb3RlbC9maXJlYmFzZUluc3RydW1lbnRhdGlvbi5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0ZpcmViYXNlJztcblxuY29uc3QgY29uZmlnID0ge1xuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rOiBzcGFuID0+IHtcbiAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uZmlyZWJhc2Uub3RlbC5maXJlc3RvcmUnKTtcblxuICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgJ2RiLnF1ZXJ5Jyk7XG4gIH0sXG4gIGZ1bmN0aW9uczoge1xuICAgIHJlcXVlc3RIb29rOiBzcGFuID0+IHtcbiAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5maXJlYmFzZS5vdGVsLmZ1bmN0aW9ucycpO1xuXG4gICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1AsICdodHRwLnJlcXVlc3QnKTtcbiAgICB9LFxuICAgIGVycm9ySG9vazogYXN5bmMgKF8sIGVycm9yKSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGVycm9yLCB7XG4gICAgICAgICAgbWVjaGFuaXNtOiB7XG4gICAgICAgICAgICB0eXBlOiAnYXV0by5maXJlYmFzZS5vdGVsLmZ1bmN0aW9ucycsXG4gICAgICAgICAgICBoYW5kbGVkOiBmYWxzZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgYXdhaXQgY29yZS5mbHVzaCgyMDAwKTtcbiAgICAgIH1cbiAgICB9LFxuICB9LFxufTtcblxuY29uc3QgaW5zdHJ1bWVudEZpcmViYXNlID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShJTlRFR1JBVElPTl9OQU1FLCAoKSA9PiBuZXcgZmlyZWJhc2VJbnN0cnVtZW50YXRpb24uRmlyZWJhc2VJbnN0cnVtZW50YXRpb24oY29uZmlnKSk7XG5cbmNvbnN0IF9maXJlYmFzZUludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRGaXJlYmFzZSgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbmNvbnN0IGZpcmViYXNlSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9maXJlYmFzZUludGVncmF0aW9uKTtcblxuZXhwb3J0cy5maXJlYmFzZUludGVncmF0aW9uID0gZmlyZWJhc2VJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEZpcmViYXNlID0gaW5zdHJ1bWVudEZpcmViYXNlO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZmlyZWJhc2UuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js":
/*!***************************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js ***!
\***************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst firestore = __webpack_require__(/*! ./patches/firestore.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js\");\nconst functions = __webpack_require__(/*! ./patches/functions.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js\");\n\nconst DefaultFirebaseInstrumentationConfig = {};\nconst firestoreSupportedVersions = ['>=3.0.0 <5']; // firebase 9+\nconst functionsSupportedVersions = ['>=6.0.0 <7']; // firebase-functions v2\n\n/**\n * Instrumentation for Firebase services, specifically Firestore.\n */\nclass FirebaseInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = DefaultFirebaseInstrumentationConfig) {\n super('@sentry/instrumentation-firebase', core.SDK_VERSION, config);\n }\n\n /**\n * sets config\n * @param config\n */\n setConfig(config = {}) {\n super.setConfig({ ...DefaultFirebaseInstrumentationConfig, ...config });\n }\n\n /**\n *\n * @protected\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n init() {\n const modules = [];\n\n modules.push(firestore.patchFirestore(this.tracer, firestoreSupportedVersions, this._wrap, this._unwrap, this.getConfig()));\n modules.push(functions.patchFunctions(this.tracer, functionsSupportedVersions, this._wrap, this._unwrap, this.getConfig()));\n\n return modules;\n }\n}\n\nexports.FirebaseInstrumentation = FirebaseInstrumentation;\n//# sourceMappingURL=firebaseInstrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9maXJlYmFzZUluc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSx3QkFBd0IsbUJBQU8sQ0FBQyxpTUFBZ0M7QUFDaEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGtCQUFrQixtQkFBTyxDQUFDLDJLQUF3QjtBQUNsRCxrQkFBa0IsbUJBQU8sQ0FBQywyS0FBd0I7O0FBRWxEO0FBQ0EsbURBQW1EO0FBQ25ELG1EQUFtRDs7QUFFbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekIsc0JBQXNCLG9EQUFvRDtBQUMxRTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSwrQkFBK0I7QUFDL0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9maXJlYmFzZUluc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBmaXJlc3RvcmUgPSByZXF1aXJlKCcuL3BhdGNoZXMvZmlyZXN0b3JlLmpzJyk7XG5jb25zdCBmdW5jdGlvbnMgPSByZXF1aXJlKCcuL3BhdGNoZXMvZnVuY3Rpb25zLmpzJyk7XG5cbmNvbnN0IERlZmF1bHRGaXJlYmFzZUluc3RydW1lbnRhdGlvbkNvbmZpZyA9IHt9O1xuY29uc3QgZmlyZXN0b3JlU3VwcG9ydGVkVmVyc2lvbnMgPSBbJz49My4wLjAgPDUnXTsgLy8gZmlyZWJhc2UgOStcbmNvbnN0IGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zID0gWyc+PTYuMC4wIDw3J107IC8vIGZpcmViYXNlLWZ1bmN0aW9ucyB2MlxuXG4vKipcbiAqIEluc3RydW1lbnRhdGlvbiBmb3IgRmlyZWJhc2Ugc2VydmljZXMsIHNwZWNpZmljYWxseSBGaXJlc3RvcmUuXG4gKi9cbmNsYXNzIEZpcmViYXNlSW5zdHJ1bWVudGF0aW9uIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0gRGVmYXVsdEZpcmViYXNlSW5zdHJ1bWVudGF0aW9uQ29uZmlnKSB7XG4gICAgc3VwZXIoJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWZpcmViYXNlJywgY29yZS5TREtfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBzZXRzIGNvbmZpZ1xuICAgKiBAcGFyYW0gY29uZmlnXG4gICAqL1xuICAgIHNldENvbmZpZyhjb25maWcgPSB7fSkge1xuICAgIHN1cGVyLnNldENvbmZpZyh7IC4uLkRlZmF1bHRGaXJlYmFzZUluc3RydW1lbnRhdGlvbkNvbmZpZywgLi4uY29uZmlnIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwcm90ZWN0ZWRcbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgIGluaXQoKSB7XG4gICAgY29uc3QgbW9kdWxlcyA9IFtdO1xuXG4gICAgbW9kdWxlcy5wdXNoKGZpcmVzdG9yZS5wYXRjaEZpcmVzdG9yZSh0aGlzLnRyYWNlciwgZmlyZXN0b3JlU3VwcG9ydGVkVmVyc2lvbnMsIHRoaXMuX3dyYXAsIHRoaXMuX3Vud3JhcCwgdGhpcy5nZXRDb25maWcoKSkpO1xuICAgIG1vZHVsZXMucHVzaChmdW5jdGlvbnMucGF0Y2hGdW5jdGlvbnModGhpcy50cmFjZXIsIGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zLCB0aGlzLl93cmFwLCB0aGlzLl91bndyYXAsIHRoaXMuZ2V0Q29uZmlnKCkpKTtcblxuICAgIHJldHVybiBtb2R1bGVzO1xuICB9XG59XG5cbmV4cG9ydHMuRmlyZWJhc2VJbnN0cnVtZW50YXRpb24gPSBGaXJlYmFzZUluc3RydW1lbnRhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWZpcmViYXNlSW5zdHJ1bWVudGF0aW9uLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js ***!
\*********************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst net = __webpack_require__(/*! node:net */ \"node:net\");\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\n\n// Inline minimal types used from `shimmer` to avoid importing shimmer's types directly.\n// We only need the shape for `wrap` and `unwrap` used in this file.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n/**\n *\n * @param tracer - Opentelemetry Tracer\n * @param firestoreSupportedVersions - supported version of firebase/firestore\n * @param wrap - reference to native instrumentation wrap function\n * @param unwrap - reference to native instrumentation wrap function\n */\nfunction patchFirestore(\n tracer,\n firestoreSupportedVersions,\n wrap,\n unwrap,\n config,\n) {\n const defaultFirestoreSpanCreationHook = () => {};\n\n let firestoreSpanCreationHook = defaultFirestoreSpanCreationHook;\n const configFirestoreSpanCreationHook = config.firestoreSpanCreationHook;\n\n if (typeof configFirestoreSpanCreationHook === 'function') {\n firestoreSpanCreationHook = (span) => {\n instrumentation.safeExecuteInTheMiddle(\n () => configFirestoreSpanCreationHook(span),\n error => {\n if (!error) {\n return;\n }\n api.diag.error(error?.message);\n },\n true,\n );\n };\n }\n\n const moduleFirestoreCJS = new instrumentation.InstrumentationNodeModuleDefinition(\n '@firebase/firestore',\n firestoreSupportedVersions,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (moduleExports) => wrapMethods(moduleExports, wrap, unwrap, tracer, firestoreSpanCreationHook),\n );\n const files = [\n '@firebase/firestore/dist/lite/index.node.cjs.js',\n '@firebase/firestore/dist/lite/index.node.mjs.js',\n '@firebase/firestore/dist/lite/index.rn.esm2017.js',\n '@firebase/firestore/dist/lite/index.cjs.js',\n ];\n\n for (const file of files) {\n moduleFirestoreCJS.files.push(\n new instrumentation.InstrumentationNodeModuleFile(\n file,\n firestoreSupportedVersions,\n moduleExports => wrapMethods(moduleExports, wrap, unwrap, tracer, firestoreSpanCreationHook),\n moduleExports => unwrapMethods(moduleExports, unwrap),\n ),\n );\n }\n\n return moduleFirestoreCJS;\n}\n\nfunction wrapMethods(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n moduleExports,\n wrap,\n unwrap,\n tracer,\n firestoreSpanCreationHook,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n) {\n unwrapMethods(moduleExports, unwrap);\n\n wrap(moduleExports, 'addDoc', patchAddDoc(tracer, firestoreSpanCreationHook));\n wrap(moduleExports, 'getDocs', patchGetDocs(tracer, firestoreSpanCreationHook));\n wrap(moduleExports, 'setDoc', patchSetDoc(tracer, firestoreSpanCreationHook));\n wrap(moduleExports, 'deleteDoc', patchDeleteDoc(tracer, firestoreSpanCreationHook));\n\n return moduleExports;\n}\n\nfunction unwrapMethods(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n moduleExports,\n unwrap,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n) {\n for (const method of ['addDoc', 'getDocs', 'setDoc', 'deleteDoc']) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (instrumentation.isWrapped(moduleExports[method])) {\n unwrap(moduleExports, method);\n }\n }\n return moduleExports;\n}\n\nfunction patchAddDoc(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function addDoc(original) {\n return function (\n reference,\n data,\n ) {\n const span = startDBSpan(tracer, 'addDoc', reference);\n firestoreSpanCreationHook(span);\n return executeContextWithSpan(span, () => {\n return original(reference, data);\n });\n };\n };\n}\n\nfunction patchDeleteDoc(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function deleteDoc(original) {\n return function (reference) {\n const span = startDBSpan(tracer, 'deleteDoc', reference.parent || reference);\n firestoreSpanCreationHook(span);\n return executeContextWithSpan(span, () => {\n return original(reference);\n });\n };\n };\n}\n\nfunction patchGetDocs(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function getDocs(original) {\n return function (\n reference,\n ) {\n const span = startDBSpan(tracer, 'getDocs', reference);\n firestoreSpanCreationHook(span);\n return executeContextWithSpan(span, () => {\n return original(reference);\n });\n };\n };\n}\n\nfunction patchSetDoc(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function setDoc(original) {\n return function (\n reference,\n data,\n options,\n ) {\n const span = startDBSpan(tracer, 'setDoc', reference.parent || reference);\n firestoreSpanCreationHook(span);\n\n return executeContextWithSpan(span, () => {\n return typeof options !== 'undefined' ? original(reference, data, options) : original(reference, data);\n });\n };\n };\n}\n\nfunction executeContextWithSpan(span, callback) {\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n return instrumentation.safeExecuteInTheMiddle(\n () => {\n return callback();\n },\n err => {\n if (err) {\n span.recordException(err);\n }\n span.end();\n },\n true,\n );\n });\n}\n\nfunction startDBSpan(\n tracer,\n spanName,\n reference,\n) {\n const span = tracer.startSpan(`${spanName} ${reference.path}`, { kind: api.SpanKind.CLIENT });\n addAttributes(span, reference);\n span.setAttribute(semanticConventions.ATTR_DB_OPERATION_NAME, spanName);\n return span;\n}\n\n/**\n * Gets the server address and port attributes from the Firestore settings.\n * It's best effort to extract the address and port from the settings, especially for IPv6.\n * @param span - The span to set attributes on.\n * @param settings - The Firestore settings containing host information.\n */\nfunction getPortAndAddress(settings)\n\n {\n let address;\n let port;\n\n if (typeof settings.host === 'string') {\n if (settings.host.startsWith('[')) {\n // IPv6 addresses can be enclosed in square brackets, e.g., [2001:db8::1]:8080\n if (settings.host.endsWith(']')) {\n // IPv6 with square brackets without port\n address = settings.host.replace(/^\\[|\\]$/g, '');\n } else if (settings.host.includes(']:')) {\n // IPv6 with square brackets with port\n const lastColonIndex = settings.host.lastIndexOf(':');\n if (lastColonIndex !== -1) {\n address = settings.host.slice(1, lastColonIndex).replace(/^\\[|\\]$/g, '');\n port = settings.host.slice(lastColonIndex + 1);\n }\n }\n } else {\n // IPv4 or IPv6 without square brackets\n // If it's an IPv6 address without square brackets, we assume it does not have a port.\n if (net.isIPv6(settings.host)) {\n address = settings.host;\n }\n // If it's an IPv4 address, we can extract the port if it exists.\n else {\n const lastColonIndex = settings.host.lastIndexOf(':');\n if (lastColonIndex !== -1) {\n address = settings.host.slice(0, lastColonIndex);\n port = settings.host.slice(lastColonIndex + 1);\n } else {\n address = settings.host;\n }\n }\n }\n }\n return {\n address: address,\n port: port ? parseInt(port, 10) : undefined,\n };\n}\n\nfunction addAttributes(\n span,\n reference,\n) {\n const firestoreApp = reference.firestore.app;\n const firestoreOptions = firestoreApp.options;\n const json = reference.firestore.toJSON() || {};\n const settings = json.settings || {};\n\n const attributes = {\n [semanticConventions.ATTR_DB_COLLECTION_NAME]: reference.path,\n [semanticConventions.ATTR_DB_NAMESPACE]: firestoreApp.name,\n [semanticConventions.ATTR_DB_SYSTEM_NAME]: 'firebase.firestore',\n 'firebase.firestore.type': reference.type,\n 'firebase.firestore.options.projectId': firestoreOptions.projectId,\n 'firebase.firestore.options.appId': firestoreOptions.appId,\n 'firebase.firestore.options.messagingSenderId': firestoreOptions.messagingSenderId,\n 'firebase.firestore.options.storageBucket': firestoreOptions.storageBucket,\n };\n\n const { address, port } = getPortAndAddress(settings);\n\n if (address) {\n attributes[semanticConventions.ATTR_SERVER_ADDRESS] = address;\n }\n if (port) {\n attributes[semanticConventions.ATTR_SERVER_PORT] = port;\n }\n\n span.setAttributes(attributes);\n}\n\nexports.getPortAndAddress = getPortAndAddress;\nexports.patchFirestore = patchFirestore;\n//# sourceMappingURL=firestore.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9wYXRjaGVzL2ZpcmVzdG9yZS5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsMEJBQVU7QUFDOUIsWUFBWSxtQkFBTyxDQUFDLGtJQUFvQjtBQUN4Qyx3QkFBd0IsbUJBQU8sQ0FBQyxpTUFBZ0M7QUFDaEUsNEJBQTRCLG1CQUFPLENBQUMsc0xBQXFDOztBQUV6RTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsVUFBVSxFQUFFLGVBQWUsS0FBSywyQkFBMkI7QUFDOUY7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsVUFBVSxnQkFBZ0I7O0FBRTFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBLHlCQUF5QjtBQUN6QixzQkFBc0I7QUFDdEIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9wYXRjaGVzL2ZpcmVzdG9yZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgbmV0ID0gcmVxdWlyZSgnbm9kZTpuZXQnKTtcbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uJyk7XG5jb25zdCBzZW1hbnRpY0NvbnZlbnRpb25zID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvc2VtYW50aWMtY29udmVudGlvbnMnKTtcblxuLy8gSW5saW5lIG1pbmltYWwgdHlwZXMgdXNlZCBmcm9tIGBzaGltbWVyYCB0byBhdm9pZCBpbXBvcnRpbmcgc2hpbW1lcidzIHR5cGVzIGRpcmVjdGx5LlxuLy8gV2Ugb25seSBuZWVkIHRoZSBzaGFwZSBmb3IgYHdyYXBgIGFuZCBgdW53cmFwYCB1c2VkIGluIHRoaXMgZmlsZS5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5cbi8qKlxuICpcbiAqIEBwYXJhbSB0cmFjZXIgLSBPcGVudGVsZW1ldHJ5IFRyYWNlclxuICogQHBhcmFtIGZpcmVzdG9yZVN1cHBvcnRlZFZlcnNpb25zIC0gc3VwcG9ydGVkIHZlcnNpb24gb2YgZmlyZWJhc2UvZmlyZXN0b3JlXG4gKiBAcGFyYW0gd3JhcCAtIHJlZmVyZW5jZSB0byBuYXRpdmUgaW5zdHJ1bWVudGF0aW9uIHdyYXAgZnVuY3Rpb25cbiAqIEBwYXJhbSB1bndyYXAgLSByZWZlcmVuY2UgdG8gbmF0aXZlIGluc3RydW1lbnRhdGlvbiB3cmFwIGZ1bmN0aW9uXG4gKi9cbmZ1bmN0aW9uIHBhdGNoRmlyZXN0b3JlKFxuICB0cmFjZXIsXG4gIGZpcmVzdG9yZVN1cHBvcnRlZFZlcnNpb25zLFxuICB3cmFwLFxuICB1bndyYXAsXG4gIGNvbmZpZyxcbikge1xuICBjb25zdCBkZWZhdWx0RmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayA9ICgpID0+IHt9O1xuXG4gIGxldCBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rID0gZGVmYXVsdEZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2s7XG4gIGNvbnN0IGNvbmZpZ0ZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2sgPSBjb25maWcuZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vaztcblxuICBpZiAodHlwZW9mIGNvbmZpZ0ZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rID0gKHNwYW4pID0+IHtcbiAgICAgIGluc3RydW1lbnRhdGlvbi5zYWZlRXhlY3V0ZUluVGhlTWlkZGxlKFxuICAgICAgICAoKSA9PiBjb25maWdGaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rKHNwYW4pLFxuICAgICAgICBlcnJvciA9PiB7XG4gICAgICAgICAgaWYgKCFlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhcGkuZGlhZy5lcnJvcihlcnJvcj8ubWVzc2FnZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHRydWUsXG4gICAgICApO1xuICAgIH07XG4gIH1cblxuICBjb25zdCBtb2R1bGVGaXJlc3RvcmVDSlMgPSBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKFxuICAgICdAZmlyZWJhc2UvZmlyZXN0b3JlJyxcbiAgICBmaXJlc3RvcmVTdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIChtb2R1bGVFeHBvcnRzKSA9PiB3cmFwTWV0aG9kcyhtb2R1bGVFeHBvcnRzLCB3cmFwLCB1bndyYXAsIHRyYWNlciwgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayksXG4gICk7XG4gIGNvbnN0IGZpbGVzID0gW1xuICAgICdAZmlyZWJhc2UvZmlyZXN0b3JlL2Rpc3QvbGl0ZS9pbmRleC5ub2RlLmNqcy5qcycsXG4gICAgJ0BmaXJlYmFzZS9maXJlc3RvcmUvZGlzdC9saXRlL2luZGV4Lm5vZGUubWpzLmpzJyxcbiAgICAnQGZpcmViYXNlL2ZpcmVzdG9yZS9kaXN0L2xpdGUvaW5kZXgucm4uZXNtMjAxNy5qcycsXG4gICAgJ0BmaXJlYmFzZS9maXJlc3RvcmUvZGlzdC9saXRlL2luZGV4LmNqcy5qcycsXG4gIF07XG5cbiAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG4gICAgbW9kdWxlRmlyZXN0b3JlQ0pTLmZpbGVzLnB1c2goXG4gICAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVGaWxlKFxuICAgICAgICBmaWxlLFxuICAgICAgICBmaXJlc3RvcmVTdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAgICAgbW9kdWxlRXhwb3J0cyA9PiB3cmFwTWV0aG9kcyhtb2R1bGVFeHBvcnRzLCB3cmFwLCB1bndyYXAsIHRyYWNlciwgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayksXG4gICAgICAgIG1vZHVsZUV4cG9ydHMgPT4gdW53cmFwTWV0aG9kcyhtb2R1bGVFeHBvcnRzLCB1bndyYXApLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIG1vZHVsZUZpcmVzdG9yZUNKUztcbn1cblxuZnVuY3Rpb24gd3JhcE1ldGhvZHMoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIG1vZHVsZUV4cG9ydHMsXG4gIHdyYXAsXG4gIHVud3JhcCxcbiAgdHJhY2VyLFxuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuKSB7XG4gIHVud3JhcE1ldGhvZHMobW9kdWxlRXhwb3J0cywgdW53cmFwKTtcblxuICB3cmFwKG1vZHVsZUV4cG9ydHMsICdhZGREb2MnLCBwYXRjaEFkZERvYyh0cmFjZXIsIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2spKTtcbiAgd3JhcChtb2R1bGVFeHBvcnRzLCAnZ2V0RG9jcycsIHBhdGNoR2V0RG9jcyh0cmFjZXIsIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2spKTtcbiAgd3JhcChtb2R1bGVFeHBvcnRzLCAnc2V0RG9jJywgcGF0Y2hTZXREb2ModHJhY2VyLCBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rKSk7XG4gIHdyYXAobW9kdWxlRXhwb3J0cywgJ2RlbGV0ZURvYycsIHBhdGNoRGVsZXRlRG9jKHRyYWNlciwgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vaykpO1xuXG4gIHJldHVybiBtb2R1bGVFeHBvcnRzO1xufVxuXG5mdW5jdGlvbiB1bndyYXBNZXRob2RzKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICBtb2R1bGVFeHBvcnRzLFxuICB1bndyYXAsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4pIHtcbiAgZm9yIChjb25zdCBtZXRob2Qgb2YgWydhZGREb2MnLCAnZ2V0RG9jcycsICdzZXREb2MnLCAnZGVsZXRlRG9jJ10pIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1tZW1iZXItYWNjZXNzXG4gICAgaWYgKGluc3RydW1lbnRhdGlvbi5pc1dyYXBwZWQobW9kdWxlRXhwb3J0c1ttZXRob2RdKSkge1xuICAgICAgdW53cmFwKG1vZHVsZUV4cG9ydHMsIG1ldGhvZCk7XG4gICAgfVxuICB9XG4gIHJldHVybiBtb2R1bGVFeHBvcnRzO1xufVxuXG5mdW5jdGlvbiBwYXRjaEFkZERvYyhcbiAgdHJhY2VyLFxuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rLFxuKVxuXG4ge1xuICByZXR1cm4gZnVuY3Rpb24gYWRkRG9jKG9yaWdpbmFsKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChcbiAgICAgIHJlZmVyZW5jZSxcbiAgICAgIGRhdGEsXG4gICAgKSB7XG4gICAgICBjb25zdCBzcGFuID0gc3RhcnREQlNwYW4odHJhY2VyLCAnYWRkRG9jJywgcmVmZXJlbmNlKTtcbiAgICAgIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2soc3Bhbik7XG4gICAgICByZXR1cm4gZXhlY3V0ZUNvbnRleHRXaXRoU3BhbihzcGFuLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiBvcmlnaW5hbChyZWZlcmVuY2UsIGRhdGEpO1xuICAgICAgfSk7XG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gcGF0Y2hEZWxldGVEb2MoXG4gIHRyYWNlcixcbiAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayxcbilcblxuIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGRlbGV0ZURvYyhvcmlnaW5hbCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAocmVmZXJlbmNlKSB7XG4gICAgICBjb25zdCBzcGFuID0gc3RhcnREQlNwYW4odHJhY2VyLCAnZGVsZXRlRG9jJywgcmVmZXJlbmNlLnBhcmVudCB8fCByZWZlcmVuY2UpO1xuICAgICAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayhzcGFuKTtcbiAgICAgIHJldHVybiBleGVjdXRlQ29udGV4dFdpdGhTcGFuKHNwYW4sICgpID0+IHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsKHJlZmVyZW5jZSk7XG4gICAgICB9KTtcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBwYXRjaEdldERvY3MoXG4gIHRyYWNlcixcbiAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayxcbilcblxuIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGdldERvY3Mob3JpZ2luYWwpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gKFxuICAgICAgcmVmZXJlbmNlLFxuICAgICkge1xuICAgICAgY29uc3Qgc3BhbiA9IHN0YXJ0REJTcGFuKHRyYWNlciwgJ2dldERvY3MnLCByZWZlcmVuY2UpO1xuICAgICAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayhzcGFuKTtcbiAgICAgIHJldHVybiBleGVjdXRlQ29udGV4dFdpdGhTcGFuKHNwYW4sICgpID0+IHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsKHJlZmVyZW5jZSk7XG4gICAgICB9KTtcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBwYXRjaFNldERvYyhcbiAgdHJhY2VyLFxuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rLFxuKVxuXG4ge1xuICByZXR1cm4gZnVuY3Rpb24gc2V0RG9jKG9yaWdpbmFsKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChcbiAgICAgIHJlZmVyZW5jZSxcbiAgICAgIGRhdGEsXG4gICAgICBvcHRpb25zLFxuICAgICkge1xuICAgICAgY29uc3Qgc3BhbiA9IHN0YXJ0REJTcGFuKHRyYWNlciwgJ3NldERvYycsIHJlZmVyZW5jZS5wYXJlbnQgfHwgcmVmZXJlbmNlKTtcbiAgICAgIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2soc3Bhbik7XG5cbiAgICAgIHJldHVybiBleGVjdXRlQ29udGV4dFdpdGhTcGFuKHNwYW4sICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBvcHRpb25zICE9PSAndW5kZWZpbmVkJyA/IG9yaWdpbmFsKHJlZmVyZW5jZSwgZGF0YSwgb3B0aW9ucykgOiBvcmlnaW5hbChyZWZlcmVuY2UsIGRhdGEpO1xuICAgICAgfSk7XG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZXhlY3V0ZUNvbnRleHRXaXRoU3BhbihzcGFuLCBjYWxsYmFjaykge1xuICByZXR1cm4gYXBpLmNvbnRleHQud2l0aChhcGkudHJhY2Uuc2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSwgc3BhbiksICgpID0+IHtcbiAgICByZXR1cm4gaW5zdHJ1bWVudGF0aW9uLnNhZmVFeGVjdXRlSW5UaGVNaWRkbGUoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHJldHVybiBjYWxsYmFjaygpO1xuICAgICAgfSxcbiAgICAgIGVyciA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICBzcGFuLnJlY29yZEV4Y2VwdGlvbihlcnIpO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICB9LFxuICAgICAgdHJ1ZSxcbiAgICApO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gc3RhcnREQlNwYW4oXG4gIHRyYWNlcixcbiAgc3Bhbk5hbWUsXG4gIHJlZmVyZW5jZSxcbikge1xuICBjb25zdCBzcGFuID0gdHJhY2VyLnN0YXJ0U3BhbihgJHtzcGFuTmFtZX0gJHtyZWZlcmVuY2UucGF0aH1gLCB7IGtpbmQ6IGFwaS5TcGFuS2luZC5DTElFTlQgfSk7XG4gIGFkZEF0dHJpYnV0ZXMoc3BhbiwgcmVmZXJlbmNlKTtcbiAgc3Bhbi5zZXRBdHRyaWJ1dGUoc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX09QRVJBVElPTl9OQU1FLCBzcGFuTmFtZSk7XG4gIHJldHVybiBzcGFuO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIHNlcnZlciBhZGRyZXNzIGFuZCBwb3J0IGF0dHJpYnV0ZXMgZnJvbSB0aGUgRmlyZXN0b3JlIHNldHRpbmdzLlxuICogSXQncyBiZXN0IGVmZm9ydCB0byBleHRyYWN0IHRoZSBhZGRyZXNzIGFuZCBwb3J0IGZyb20gdGhlIHNldHRpbmdzLCBlc3BlY2lhbGx5IGZvciBJUHY2LlxuICogQHBhcmFtIHNwYW4gLSBUaGUgc3BhbiB0byBzZXQgYXR0cmlidXRlcyBvbi5cbiAqIEBwYXJhbSBzZXR0aW5ncyAtIFRoZSBGaXJlc3RvcmUgc2V0dGluZ3MgY29udGFpbmluZyBob3N0IGluZm9ybWF0aW9uLlxuICovXG5mdW5jdGlvbiBnZXRQb3J0QW5kQWRkcmVzcyhzZXR0aW5ncylcblxuIHtcbiAgbGV0IGFkZHJlc3M7XG4gIGxldCBwb3J0O1xuXG4gIGlmICh0eXBlb2Ygc2V0dGluZ3MuaG9zdCA9PT0gJ3N0cmluZycpIHtcbiAgICBpZiAoc2V0dGluZ3MuaG9zdC5zdGFydHNXaXRoKCdbJykpIHtcbiAgICAgIC8vIElQdjYgYWRkcmVzc2VzIGNhbiBiZSBlbmNsb3NlZCBpbiBzcXVhcmUgYnJhY2tldHMsIGUuZy4sIFsyMDAxOmRiODo6MV06ODA4MFxuICAgICAgaWYgKHNldHRpbmdzLmhvc3QuZW5kc1dpdGgoJ10nKSkge1xuICAgICAgICAvLyBJUHY2IHdpdGggc3F1YXJlIGJyYWNrZXRzIHdpdGhvdXQgcG9ydFxuICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdC5yZXBsYWNlKC9eXFxbfFxcXSQvZywgJycpO1xuICAgICAgfSBlbHNlIGlmIChzZXR0aW5ncy5ob3N0LmluY2x1ZGVzKCddOicpKSB7XG4gICAgICAgIC8vIElQdjYgd2l0aCBzcXVhcmUgYnJhY2tldHMgd2l0aCBwb3J0XG4gICAgICAgIGNvbnN0IGxhc3RDb2xvbkluZGV4ID0gc2V0dGluZ3MuaG9zdC5sYXN0SW5kZXhPZignOicpO1xuICAgICAgICBpZiAobGFzdENvbG9uSW5kZXggIT09IC0xKSB7XG4gICAgICAgICAgYWRkcmVzcyA9IHNldHRpbmdzLmhvc3Quc2xpY2UoMSwgbGFzdENvbG9uSW5kZXgpLnJlcGxhY2UoL15cXFt8XFxdJC9nLCAnJyk7XG4gICAgICAgICAgcG9ydCA9IHNldHRpbmdzLmhvc3Quc2xpY2UobGFzdENvbG9uSW5kZXggKyAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBJUHY0IG9yIElQdjYgd2l0aG91dCBzcXVhcmUgYnJhY2tldHNcbiAgICAgIC8vIElmIGl0J3MgYW4gSVB2NiBhZGRyZXNzIHdpdGhvdXQgc3F1YXJlIGJyYWNrZXRzLCB3ZSBhc3N1bWUgaXQgZG9lcyBub3QgaGF2ZSBhIHBvcnQuXG4gICAgICBpZiAobmV0LmlzSVB2NihzZXR0aW5ncy5ob3N0KSkge1xuICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdDtcbiAgICAgIH1cbiAgICAgIC8vIElmIGl0J3MgYW4gSVB2NCBhZGRyZXNzLCB3ZSBjYW4gZXh0cmFjdCB0aGUgcG9ydCBpZiBpdCBleGlzdHMuXG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgbGFzdENvbG9uSW5kZXggPSBzZXR0aW5ncy5ob3N0Lmxhc3RJbmRleE9mKCc6Jyk7XG4gICAgICAgIGlmIChsYXN0Q29sb25JbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdC5zbGljZSgwLCBsYXN0Q29sb25JbmRleCk7XG4gICAgICAgICAgcG9ydCA9IHNldHRpbmdzLmhvc3Quc2xpY2UobGFzdENvbG9uSW5kZXggKyAxKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4ge1xuICAgIGFkZHJlc3M6IGFkZHJlc3MsXG4gICAgcG9ydDogcG9ydCA/IHBhcnNlSW50KHBvcnQsIDEwKSA6IHVuZGVmaW5lZCxcbiAgfTtcbn1cblxuZnVuY3Rpb24gYWRkQXR0cmlidXRlcyhcbiAgc3BhbixcbiAgcmVmZXJlbmNlLFxuKSB7XG4gIGNvbnN0IGZpcmVzdG9yZUFwcCA9IHJlZmVyZW5jZS5maXJlc3RvcmUuYXBwO1xuICBjb25zdCBmaXJlc3RvcmVPcHRpb25zID0gZmlyZXN0b3JlQXBwLm9wdGlvbnM7XG4gIGNvbnN0IGpzb24gPSByZWZlcmVuY2UuZmlyZXN0b3JlLnRvSlNPTigpIHx8IHt9O1xuICBjb25zdCBzZXR0aW5ncyA9IGpzb24uc2V0dGluZ3MgfHwge307XG5cbiAgY29uc3QgYXR0cmlidXRlcyA9IHtcbiAgICBbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX0NPTExFQ1RJT05fTkFNRV06IHJlZmVyZW5jZS5wYXRoLFxuICAgIFtzZW1hbnRpY0NvbnZlbnRpb25zLkFUVFJfREJfTkFNRVNQQUNFXTogZmlyZXN0b3JlQXBwLm5hbWUsXG4gICAgW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9TWVNURU1fTkFNRV06ICdmaXJlYmFzZS5maXJlc3RvcmUnLFxuICAgICdmaXJlYmFzZS5maXJlc3RvcmUudHlwZSc6IHJlZmVyZW5jZS50eXBlLFxuICAgICdmaXJlYmFzZS5maXJlc3RvcmUub3B0aW9ucy5wcm9qZWN0SWQnOiBmaXJlc3RvcmVPcHRpb25zLnByb2plY3RJZCxcbiAgICAnZmlyZWJhc2UuZmlyZXN0b3JlLm9wdGlvbnMuYXBwSWQnOiBmaXJlc3RvcmVPcHRpb25zLmFwcElkLFxuICAgICdmaXJlYmFzZS5maXJlc3RvcmUub3B0aW9ucy5tZXNzYWdpbmdTZW5kZXJJZCc6IGZpcmVzdG9yZU9wdGlvbnMubWVzc2FnaW5nU2VuZGVySWQsXG4gICAgJ2ZpcmViYXNlLmZpcmVzdG9yZS5vcHRpb25zLnN0b3JhZ2VCdWNrZXQnOiBmaXJlc3RvcmVPcHRpb25zLnN0b3JhZ2VCdWNrZXQsXG4gIH07XG5cbiAgY29uc3QgeyBhZGRyZXNzLCBwb3J0IH0gPSBnZXRQb3J0QW5kQWRkcmVzcyhzZXR0aW5ncyk7XG5cbiAgaWYgKGFkZHJlc3MpIHtcbiAgICBhdHRyaWJ1dGVzW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9TRVJWRVJfQUREUkVTU10gPSBhZGRyZXNzO1xuICB9XG4gIGlmIChwb3J0KSB7XG4gICAgYXR0cmlidXRlc1tzZW1hbnRpY0NvbnZlbnRpb25zLkFUVFJfU0VSVkVSX1BPUlRdID0gcG9ydDtcbiAgfVxuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyhhdHRyaWJ1dGVzKTtcbn1cblxuZXhwb3J0cy5nZXRQb3J0QW5kQWRkcmVzcyA9IGdldFBvcnRBbmRBZGRyZXNzO1xuZXhwb3J0cy5wYXRjaEZpcmVzdG9yZSA9IHBhdGNoRmlyZXN0b3JlO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZmlyZXN0b3JlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js ***!
\*********************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\n\n/**\n * Patches Firebase Functions v2 to add OpenTelemetry instrumentation\n * @param tracer - Opentelemetry Tracer\n * @param functionsSupportedVersions - supported versions of firebase-functions\n * @param wrap - reference to native instrumentation wrap function\n * @param unwrap - reference to native instrumentation unwrap function\n * @param config - Firebase instrumentation config\n */\nfunction patchFunctions(\n tracer,\n functionsSupportedVersions,\n wrap,\n unwrap,\n config,\n) {\n let requestHook = () => {};\n let responseHook = () => {};\n const errorHook = config.functions?.errorHook;\n const configRequestHook = config.functions?.requestHook;\n const configResponseHook = config.functions?.responseHook;\n\n if (typeof configResponseHook === 'function') {\n responseHook = (span, err) => {\n instrumentation.safeExecuteInTheMiddle(\n () => configResponseHook(span, err),\n error => {\n if (!error) {\n return;\n }\n api.diag.error(error?.message);\n },\n true,\n );\n };\n }\n if (typeof configRequestHook === 'function') {\n requestHook = (span) => {\n instrumentation.safeExecuteInTheMiddle(\n () => configRequestHook(span),\n error => {\n if (!error) {\n return;\n }\n api.diag.error(error?.message);\n },\n true,\n );\n };\n }\n\n const moduleFunctionsCJS = new instrumentation.InstrumentationNodeModuleDefinition('firebase-functions', functionsSupportedVersions);\n const modulesToInstrument = [\n { name: 'firebase-functions/lib/v2/providers/https.js', triggerType: 'function' },\n { name: 'firebase-functions/lib/v2/providers/firestore.js', triggerType: 'firestore' },\n { name: 'firebase-functions/lib/v2/providers/scheduler.js', triggerType: 'scheduler' },\n { name: 'firebase-functions/lib/v2/storage.js', triggerType: 'storage' },\n ] ;\n\n modulesToInstrument.forEach(({ name, triggerType }) => {\n moduleFunctionsCJS.files.push(\n new instrumentation.InstrumentationNodeModuleFile(\n name,\n functionsSupportedVersions,\n moduleExports =>\n wrapCommonFunctions(\n moduleExports,\n wrap,\n unwrap,\n tracer,\n { requestHook, responseHook, errorHook },\n triggerType,\n ),\n moduleExports => unwrapCommonFunctions(moduleExports, unwrap),\n ),\n );\n });\n\n return moduleFunctionsCJS;\n}\n\n/**\n * Patches Cloud Functions for Firebase (v2) to add OpenTelemetry instrumentation\n *\n * @param tracer - Opentelemetry Tracer\n * @param functionsConfig - Firebase instrumentation config\n * @param triggerType - Type of trigger\n * @returns A function that patches the function\n */\nfunction patchV2Functions(\n tracer,\n functionsConfig,\n triggerType,\n) {\n return function v2FunctionsWrapper(original) {\n return function ( ...args) {\n const handler = typeof args[0] === 'function' ? args[0] : args[1];\n const documentOrOptions = typeof args[0] === 'function' ? undefined : args[0];\n\n if (!handler) {\n return original.call(this, ...args);\n }\n\n const wrappedHandler = async function ( ...handlerArgs) {\n const functionName = process.env.FUNCTION_TARGET || process.env.K_SERVICE || 'unknown';\n const span = tracer.startSpan(`firebase.function.${triggerType}`, {\n kind: api.SpanKind.SERVER,\n });\n\n const attributes = {\n 'faas.name': functionName,\n 'faas.trigger': triggerType,\n 'faas.provider': 'firebase',\n };\n\n if (process.env.GCLOUD_PROJECT) {\n attributes['cloud.project_id'] = process.env.GCLOUD_PROJECT;\n }\n\n if (process.env.EVENTARC_CLOUD_EVENT_SOURCE) {\n attributes['cloud.event_source'] = process.env.EVENTARC_CLOUD_EVENT_SOURCE;\n }\n\n span.setAttributes(attributes);\n functionsConfig?.requestHook?.(span);\n\n // Can be changed to safeExecuteInTheMiddleAsync once following is merged and released\n // https://github.com/open-telemetry/opentelemetry-js/pull/6032\n return api.context.with(api.trace.setSpan(api.context.active(), span), async () => {\n let error;\n let result;\n\n try {\n result = await handler.apply(this, handlerArgs);\n } catch (e) {\n error = e ;\n }\n\n functionsConfig?.responseHook?.(span, error);\n\n if (error) {\n span.recordException(error);\n }\n\n span.end();\n\n if (error) {\n await functionsConfig?.errorHook?.(span, error);\n throw error;\n }\n\n return result;\n });\n };\n\n if (documentOrOptions) {\n return original.call(this, documentOrOptions, wrappedHandler);\n } else {\n return original.call(this, wrappedHandler);\n }\n };\n };\n}\n\nfunction wrapCommonFunctions(\n moduleExports,\n wrap,\n unwrap,\n tracer,\n functionsConfig,\n triggerType,\n) {\n unwrapCommonFunctions(moduleExports, unwrap);\n\n switch (triggerType) {\n case 'function':\n wrap(moduleExports, 'onRequest', patchV2Functions(tracer, functionsConfig, 'http.request'));\n wrap(moduleExports, 'onCall', patchV2Functions(tracer, functionsConfig, 'http.call'));\n break;\n\n case 'firestore':\n wrap(moduleExports, 'onDocumentCreated', patchV2Functions(tracer, functionsConfig, 'firestore.document.created'));\n wrap(moduleExports, 'onDocumentUpdated', patchV2Functions(tracer, functionsConfig, 'firestore.document.updated'));\n wrap(moduleExports, 'onDocumentDeleted', patchV2Functions(tracer, functionsConfig, 'firestore.document.deleted'));\n wrap(moduleExports, 'onDocumentWritten', patchV2Functions(tracer, functionsConfig, 'firestore.document.written'));\n wrap(\n moduleExports,\n 'onDocumentCreatedWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.created'),\n );\n wrap(\n moduleExports,\n 'onDocumentUpdatedWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.updated'),\n );\n\n wrap(\n moduleExports,\n 'onDocumentDeletedWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.deleted'),\n );\n\n wrap(\n moduleExports,\n 'onDocumentWrittenWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.written'),\n );\n break;\n\n case 'scheduler':\n wrap(moduleExports, 'onSchedule', patchV2Functions(tracer, functionsConfig, 'scheduler.scheduled'));\n break;\n\n case 'storage':\n wrap(moduleExports, 'onObjectFinalized', patchV2Functions(tracer, functionsConfig, 'storage.object.finalized'));\n wrap(moduleExports, 'onObjectArchived', patchV2Functions(tracer, functionsConfig, 'storage.object.archived'));\n wrap(moduleExports, 'onObjectDeleted', patchV2Functions(tracer, functionsConfig, 'storage.object.deleted'));\n wrap(\n moduleExports,\n 'onObjectMetadataUpdated',\n patchV2Functions(tracer, functionsConfig, 'storage.object.metadataUpdated'),\n );\n break;\n }\n\n return moduleExports;\n}\n\nfunction unwrapCommonFunctions(\n moduleExports,\n unwrap,\n) {\n const methods = [\n 'onSchedule',\n 'onRequest',\n 'onCall',\n 'onObjectFinalized',\n 'onObjectArchived',\n 'onObjectDeleted',\n 'onObjectMetadataUpdated',\n 'onDocumentCreated',\n 'onDocumentUpdated',\n 'onDocumentDeleted',\n 'onDocumentWritten',\n 'onDocumentCreatedWithAuthContext',\n 'onDocumentUpdatedWithAuthContext',\n 'onDocumentDeletedWithAuthContext',\n 'onDocumentWrittenWithAuthContext',\n ];\n\n for (const method of methods) {\n if (instrumentation.isWrapped(moduleExports[method])) {\n unwrap(moduleExports, method);\n }\n }\n return moduleExports;\n}\n\nexports.patchFunctions = patchFunctions;\nexports.patchV2Functions = patchV2Functions;\n//# sourceMappingURL=functions.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9wYXRjaGVzL2Z1bmN0aW9ucy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQzs7QUFFaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU0sK0VBQStFO0FBQ3JGLE1BQU0sb0ZBQW9GO0FBQzFGLE1BQU0sb0ZBQW9GO0FBQzFGLE1BQU0sc0VBQXNFO0FBQzVFOztBQUVBLGlDQUFpQyxtQkFBbUI7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHNDQUFzQztBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSwyREFBMkQsWUFBWTtBQUN2RTtBQUNBLFNBQVM7O0FBRVQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsWUFBWTtBQUNaO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0JBQXNCO0FBQ3RCLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9maXJlYmFzZS9vdGVsL3BhdGNoZXMvZnVuY3Rpb25zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBhcGkgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9hcGknKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuXG4vKipcbiAqIFBhdGNoZXMgRmlyZWJhc2UgRnVuY3Rpb25zIHYyIHRvIGFkZCBPcGVuVGVsZW1ldHJ5IGluc3RydW1lbnRhdGlvblxuICogQHBhcmFtIHRyYWNlciAtIE9wZW50ZWxlbWV0cnkgVHJhY2VyXG4gKiBAcGFyYW0gZnVuY3Rpb25zU3VwcG9ydGVkVmVyc2lvbnMgLSBzdXBwb3J0ZWQgdmVyc2lvbnMgb2YgZmlyZWJhc2UtZnVuY3Rpb25zXG4gKiBAcGFyYW0gd3JhcCAtIHJlZmVyZW5jZSB0byBuYXRpdmUgaW5zdHJ1bWVudGF0aW9uIHdyYXAgZnVuY3Rpb25cbiAqIEBwYXJhbSB1bndyYXAgLSByZWZlcmVuY2UgdG8gbmF0aXZlIGluc3RydW1lbnRhdGlvbiB1bndyYXAgZnVuY3Rpb25cbiAqIEBwYXJhbSBjb25maWcgLSBGaXJlYmFzZSBpbnN0cnVtZW50YXRpb24gY29uZmlnXG4gKi9cbmZ1bmN0aW9uIHBhdGNoRnVuY3Rpb25zKFxuICB0cmFjZXIsXG4gIGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zLFxuICB3cmFwLFxuICB1bndyYXAsXG4gIGNvbmZpZyxcbikge1xuICBsZXQgcmVxdWVzdEhvb2sgPSAoKSA9PiB7fTtcbiAgbGV0IHJlc3BvbnNlSG9vayA9ICgpID0+IHt9O1xuICBjb25zdCBlcnJvckhvb2sgPSBjb25maWcuZnVuY3Rpb25zPy5lcnJvckhvb2s7XG4gIGNvbnN0IGNvbmZpZ1JlcXVlc3RIb29rID0gY29uZmlnLmZ1bmN0aW9ucz8ucmVxdWVzdEhvb2s7XG4gIGNvbnN0IGNvbmZpZ1Jlc3BvbnNlSG9vayA9IGNvbmZpZy5mdW5jdGlvbnM/LnJlc3BvbnNlSG9vaztcblxuICBpZiAodHlwZW9mIGNvbmZpZ1Jlc3BvbnNlSG9vayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJlc3BvbnNlSG9vayA9IChzcGFuLCBlcnIpID0+IHtcbiAgICAgIGluc3RydW1lbnRhdGlvbi5zYWZlRXhlY3V0ZUluVGhlTWlkZGxlKFxuICAgICAgICAoKSA9PiBjb25maWdSZXNwb25zZUhvb2soc3BhbiwgZXJyKSxcbiAgICAgICAgZXJyb3IgPT4ge1xuICAgICAgICAgIGlmICghZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgYXBpLmRpYWcuZXJyb3IoZXJyb3I/Lm1lc3NhZ2UpO1xuICAgICAgICB9LFxuICAgICAgICB0cnVlLFxuICAgICAgKTtcbiAgICB9O1xuICB9XG4gIGlmICh0eXBlb2YgY29uZmlnUmVxdWVzdEhvb2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXF1ZXN0SG9vayA9IChzcGFuKSA9PiB7XG4gICAgICBpbnN0cnVtZW50YXRpb24uc2FmZUV4ZWN1dGVJblRoZU1pZGRsZShcbiAgICAgICAgKCkgPT4gY29uZmlnUmVxdWVzdEhvb2soc3BhbiksXG4gICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICBpZiAoIWVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGFwaS5kaWFnLmVycm9yKGVycm9yPy5tZXNzYWdlKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHJ1ZSxcbiAgICAgICk7XG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IG1vZHVsZUZ1bmN0aW9uc0NKUyA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oJ2ZpcmViYXNlLWZ1bmN0aW9ucycsIGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zKTtcbiAgY29uc3QgbW9kdWxlc1RvSW5zdHJ1bWVudCA9IFtcbiAgICB7IG5hbWU6ICdmaXJlYmFzZS1mdW5jdGlvbnMvbGliL3YyL3Byb3ZpZGVycy9odHRwcy5qcycsIHRyaWdnZXJUeXBlOiAnZnVuY3Rpb24nIH0sXG4gICAgeyBuYW1lOiAnZmlyZWJhc2UtZnVuY3Rpb25zL2xpYi92Mi9wcm92aWRlcnMvZmlyZXN0b3JlLmpzJywgdHJpZ2dlclR5cGU6ICdmaXJlc3RvcmUnIH0sXG4gICAgeyBuYW1lOiAnZmlyZWJhc2UtZnVuY3Rpb25zL2xpYi92Mi9wcm92aWRlcnMvc2NoZWR1bGVyLmpzJywgdHJpZ2dlclR5cGU6ICdzY2hlZHVsZXInIH0sXG4gICAgeyBuYW1lOiAnZmlyZWJhc2UtZnVuY3Rpb25zL2xpYi92Mi9zdG9yYWdlLmpzJywgdHJpZ2dlclR5cGU6ICdzdG9yYWdlJyB9LFxuICBdIDtcblxuICBtb2R1bGVzVG9JbnN0cnVtZW50LmZvckVhY2goKHsgbmFtZSwgdHJpZ2dlclR5cGUgfSkgPT4ge1xuICAgIG1vZHVsZUZ1bmN0aW9uc0NKUy5maWxlcy5wdXNoKFxuICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRmlsZShcbiAgICAgICAgbmFtZSxcbiAgICAgICAgZnVuY3Rpb25zU3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgIG1vZHVsZUV4cG9ydHMgPT5cbiAgICAgICAgICB3cmFwQ29tbW9uRnVuY3Rpb25zKFxuICAgICAgICAgICAgbW9kdWxlRXhwb3J0cyxcbiAgICAgICAgICAgIHdyYXAsXG4gICAgICAgICAgICB1bndyYXAsXG4gICAgICAgICAgICB0cmFjZXIsXG4gICAgICAgICAgICB7IHJlcXVlc3RIb29rLCByZXNwb25zZUhvb2ssIGVycm9ySG9vayB9LFxuICAgICAgICAgICAgdHJpZ2dlclR5cGUsXG4gICAgICAgICAgKSxcbiAgICAgICAgbW9kdWxlRXhwb3J0cyA9PiB1bndyYXBDb21tb25GdW5jdGlvbnMobW9kdWxlRXhwb3J0cywgdW53cmFwKSxcbiAgICAgICksXG4gICAgKTtcbiAgfSk7XG5cbiAgcmV0dXJuIG1vZHVsZUZ1bmN0aW9uc0NKUztcbn1cblxuLyoqXG4gKiBQYXRjaGVzIENsb3VkIEZ1bmN0aW9ucyBmb3IgRmlyZWJhc2UgKHYyKSB0byBhZGQgT3BlblRlbGVtZXRyeSBpbnN0cnVtZW50YXRpb25cbiAqXG4gKiBAcGFyYW0gdHJhY2VyIC0gT3BlbnRlbGVtZXRyeSBUcmFjZXJcbiAqIEBwYXJhbSBmdW5jdGlvbnNDb25maWcgLSBGaXJlYmFzZSBpbnN0cnVtZW50YXRpb24gY29uZmlnXG4gKiBAcGFyYW0gdHJpZ2dlclR5cGUgLSBUeXBlIG9mIHRyaWdnZXJcbiAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCBwYXRjaGVzIHRoZSBmdW5jdGlvblxuICovXG5mdW5jdGlvbiBwYXRjaFYyRnVuY3Rpb25zKFxuICB0cmFjZXIsXG4gIGZ1bmN0aW9uc0NvbmZpZyxcbiAgdHJpZ2dlclR5cGUsXG4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHYyRnVuY3Rpb25zV3JhcHBlcihvcmlnaW5hbCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoIC4uLmFyZ3MpIHtcbiAgICAgIGNvbnN0IGhhbmRsZXIgPSB0eXBlb2YgYXJnc1swXSA9PT0gJ2Z1bmN0aW9uJyA/IGFyZ3NbMF0gOiBhcmdzWzFdO1xuICAgICAgY29uc3QgZG9jdW1lbnRPck9wdGlvbnMgPSB0eXBlb2YgYXJnc1swXSA9PT0gJ2Z1bmN0aW9uJyA/IHVuZGVmaW5lZCA6IGFyZ3NbMF07XG5cbiAgICAgIGlmICghaGFuZGxlcikge1xuICAgICAgICByZXR1cm4gb3JpZ2luYWwuY2FsbCh0aGlzLCAuLi5hcmdzKTtcbiAgICAgIH1cblxuICAgICAgY29uc3Qgd3JhcHBlZEhhbmRsZXIgPSBhc3luYyBmdW5jdGlvbiAoIC4uLmhhbmRsZXJBcmdzKSB7XG4gICAgICAgIGNvbnN0IGZ1bmN0aW9uTmFtZSA9IHByb2Nlc3MuZW52LkZVTkNUSU9OX1RBUkdFVCB8fCBwcm9jZXNzLmVudi5LX1NFUlZJQ0UgfHwgJ3Vua25vd24nO1xuICAgICAgICBjb25zdCBzcGFuID0gdHJhY2VyLnN0YXJ0U3BhbihgZmlyZWJhc2UuZnVuY3Rpb24uJHt0cmlnZ2VyVHlwZX1gLCB7XG4gICAgICAgICAga2luZDogYXBpLlNwYW5LaW5kLlNFUlZFUixcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3QgYXR0cmlidXRlcyA9IHtcbiAgICAgICAgICAnZmFhcy5uYW1lJzogZnVuY3Rpb25OYW1lLFxuICAgICAgICAgICdmYWFzLnRyaWdnZXInOiB0cmlnZ2VyVHlwZSxcbiAgICAgICAgICAnZmFhcy5wcm92aWRlcic6ICdmaXJlYmFzZScsXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52LkdDTE9VRF9QUk9KRUNUKSB7XG4gICAgICAgICAgYXR0cmlidXRlc1snY2xvdWQucHJvamVjdF9pZCddID0gcHJvY2Vzcy5lbnYuR0NMT1VEX1BST0pFQ1Q7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuRVZFTlRBUkNfQ0xPVURfRVZFTlRfU09VUkNFKSB7XG4gICAgICAgICAgYXR0cmlidXRlc1snY2xvdWQuZXZlbnRfc291cmNlJ10gPSBwcm9jZXNzLmVudi5FVkVOVEFSQ19DTE9VRF9FVkVOVF9TT1VSQ0U7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZXMoYXR0cmlidXRlcyk7XG4gICAgICAgIGZ1bmN0aW9uc0NvbmZpZz8ucmVxdWVzdEhvb2s/LihzcGFuKTtcblxuICAgICAgICAvLyBDYW4gYmUgY2hhbmdlZCB0byBzYWZlRXhlY3V0ZUluVGhlTWlkZGxlQXN5bmMgb25jZSBmb2xsb3dpbmcgaXMgbWVyZ2VkIGFuZCByZWxlYXNlZFxuICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vb3Blbi10ZWxlbWV0cnkvb3BlbnRlbGVtZXRyeS1qcy9wdWxsLzYwMzJcbiAgICAgICAgcmV0dXJuIGFwaS5jb250ZXh0LndpdGgoYXBpLnRyYWNlLnNldFNwYW4oYXBpLmNvbnRleHQuYWN0aXZlKCksIHNwYW4pLCBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgbGV0IGVycm9yO1xuICAgICAgICAgIGxldCByZXN1bHQ7XG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaGFuZGxlci5hcHBseSh0aGlzLCBoYW5kbGVyQXJncyk7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgZXJyb3IgPSBlIDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbnNDb25maWc/LnJlc3BvbnNlSG9vaz8uKHNwYW4sIGVycm9yKTtcblxuICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgc3Bhbi5yZWNvcmRFeGNlcHRpb24oZXJyb3IpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHNwYW4uZW5kKCk7XG5cbiAgICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICAgIGF3YWl0IGZ1bmN0aW9uc0NvbmZpZz8uZXJyb3JIb29rPy4oc3BhbiwgZXJyb3IpO1xuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSk7XG4gICAgICB9O1xuXG4gICAgICBpZiAoZG9jdW1lbnRPck9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmNhbGwodGhpcywgZG9jdW1lbnRPck9wdGlvbnMsIHdyYXBwZWRIYW5kbGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBvcmlnaW5hbC5jYWxsKHRoaXMsIHdyYXBwZWRIYW5kbGVyKTtcbiAgICAgIH1cbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiB3cmFwQ29tbW9uRnVuY3Rpb25zKFxuICBtb2R1bGVFeHBvcnRzLFxuICB3cmFwLFxuICB1bndyYXAsXG4gIHRyYWNlcixcbiAgZnVuY3Rpb25zQ29uZmlnLFxuICB0cmlnZ2VyVHlwZSxcbikge1xuICB1bndyYXBDb21tb25GdW5jdGlvbnMobW9kdWxlRXhwb3J0cywgdW53cmFwKTtcblxuICBzd2l0Y2ggKHRyaWdnZXJUeXBlKSB7XG4gICAgY2FzZSAnZnVuY3Rpb24nOlxuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25SZXF1ZXN0JywgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ2h0dHAucmVxdWVzdCcpKTtcbiAgICAgIHdyYXAobW9kdWxlRXhwb3J0cywgJ29uQ2FsbCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdodHRwLmNhbGwnKSk7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2ZpcmVzdG9yZSc6XG4gICAgICB3cmFwKG1vZHVsZUV4cG9ydHMsICdvbkRvY3VtZW50Q3JlYXRlZCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQuY3JlYXRlZCcpKTtcbiAgICAgIHdyYXAobW9kdWxlRXhwb3J0cywgJ29uRG9jdW1lbnRVcGRhdGVkJywgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ2ZpcmVzdG9yZS5kb2N1bWVudC51cGRhdGVkJykpO1xuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25Eb2N1bWVudERlbGV0ZWQnLCBwYXRjaFYyRnVuY3Rpb25zKHRyYWNlciwgZnVuY3Rpb25zQ29uZmlnLCAnZmlyZXN0b3JlLmRvY3VtZW50LmRlbGV0ZWQnKSk7XG4gICAgICB3cmFwKG1vZHVsZUV4cG9ydHMsICdvbkRvY3VtZW50V3JpdHRlbicsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQud3JpdHRlbicpKTtcbiAgICAgIHdyYXAoXG4gICAgICAgIG1vZHVsZUV4cG9ydHMsXG4gICAgICAgICdvbkRvY3VtZW50Q3JlYXRlZFdpdGhBdXRoQ29udGV4dCcsXG4gICAgICAgIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQuY3JlYXRlZCcpLFxuICAgICAgKTtcbiAgICAgIHdyYXAoXG4gICAgICAgIG1vZHVsZUV4cG9ydHMsXG4gICAgICAgICdvbkRvY3VtZW50VXBkYXRlZFdpdGhBdXRoQ29udGV4dCcsXG4gICAgICAgIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQudXBkYXRlZCcpLFxuICAgICAgKTtcblxuICAgICAgd3JhcChcbiAgICAgICAgbW9kdWxlRXhwb3J0cyxcbiAgICAgICAgJ29uRG9jdW1lbnREZWxldGVkV2l0aEF1dGhDb250ZXh0JyxcbiAgICAgICAgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ2ZpcmVzdG9yZS5kb2N1bWVudC5kZWxldGVkJyksXG4gICAgICApO1xuXG4gICAgICB3cmFwKFxuICAgICAgICBtb2R1bGVFeHBvcnRzLFxuICAgICAgICAnb25Eb2N1bWVudFdyaXR0ZW5XaXRoQXV0aENvbnRleHQnLFxuICAgICAgICBwYXRjaFYyRnVuY3Rpb25zKHRyYWNlciwgZnVuY3Rpb25zQ29uZmlnLCAnZmlyZXN0b3JlLmRvY3VtZW50LndyaXR0ZW4nKSxcbiAgICAgICk7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ3NjaGVkdWxlcic6XG4gICAgICB3cmFwKG1vZHVsZUV4cG9ydHMsICdvblNjaGVkdWxlJywgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ3NjaGVkdWxlci5zY2hlZHVsZWQnKSk7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ3N0b3JhZ2UnOlxuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25PYmplY3RGaW5hbGl6ZWQnLCBwYXRjaFYyRnVuY3Rpb25zKHRyYWNlciwgZnVuY3Rpb25zQ29uZmlnLCAnc3RvcmFnZS5vYmplY3QuZmluYWxpemVkJykpO1xuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25PYmplY3RBcmNoaXZlZCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdzdG9yYWdlLm9iamVjdC5hcmNoaXZlZCcpKTtcbiAgICAgIHdyYXAobW9kdWxlRXhwb3J0cywgJ29uT2JqZWN0RGVsZXRlZCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdzdG9yYWdlLm9iamVjdC5kZWxldGVkJykpO1xuICAgICAgd3JhcChcbiAgICAgICAgbW9kdWxlRXhwb3J0cyxcbiAgICAgICAgJ29uT2JqZWN0TWV0YWRhdGFVcGRhdGVkJyxcbiAgICAgICAgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ3N0b3JhZ2Uub2JqZWN0Lm1ldGFkYXRhVXBkYXRlZCcpLFxuICAgICAgKTtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIG1vZHVsZUV4cG9ydHM7XG59XG5cbmZ1bmN0aW9uIHVud3JhcENvbW1vbkZ1bmN0aW9ucyhcbiAgbW9kdWxlRXhwb3J0cyxcbiAgdW53cmFwLFxuKSB7XG4gIGNvbnN0IG1ldGhvZHMgPSBbXG4gICAgJ29uU2NoZWR1bGUnLFxuICAgICdvblJlcXVlc3QnLFxuICAgICdvbkNhbGwnLFxuICAgICdvbk9iamVjdEZpbmFsaXplZCcsXG4gICAgJ29uT2JqZWN0QXJjaGl2ZWQnLFxuICAgICdvbk9iamVjdERlbGV0ZWQnLFxuICAgICdvbk9iamVjdE1ldGFkYXRhVXBkYXRlZCcsXG4gICAgJ29uRG9jdW1lbnRDcmVhdGVkJyxcbiAgICAnb25Eb2N1bWVudFVwZGF0ZWQnLFxuICAgICdvbkRvY3VtZW50RGVsZXRlZCcsXG4gICAgJ29uRG9jdW1lbnRXcml0dGVuJyxcbiAgICAnb25Eb2N1bWVudENyZWF0ZWRXaXRoQXV0aENvbnRleHQnLFxuICAgICdvbkRvY3VtZW50VXBkYXRlZFdpdGhBdXRoQ29udGV4dCcsXG4gICAgJ29uRG9jdW1lbnREZWxldGVkV2l0aEF1dGhDb250ZXh0JyxcbiAgICAnb25Eb2N1bWVudFdyaXR0ZW5XaXRoQXV0aENvbnRleHQnLFxuICBdO1xuXG4gIGZvciAoY29uc3QgbWV0aG9kIG9mIG1ldGhvZHMpIHtcbiAgICBpZiAoaW5zdHJ1bWVudGF0aW9uLmlzV3JhcHBlZChtb2R1bGVFeHBvcnRzW21ldGhvZF0pKSB7XG4gICAgICB1bndyYXAobW9kdWxlRXhwb3J0cywgbWV0aG9kKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG1vZHVsZUV4cG9ydHM7XG59XG5cbmV4cG9ydHMucGF0Y2hGdW5jdGlvbnMgPSBwYXRjaEZ1bmN0aW9ucztcbmV4cG9ydHMucGF0Y2hWMkZ1bmN0aW9ucyA9IHBhdGNoVjJGdW5jdGlvbnM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1mdW5jdGlvbnMuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js ***!
\*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationGenericPool = __webpack_require__(/*! @opentelemetry/instrumentation-generic-pool */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-generic-pool@0.57.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-generic-pool/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'GenericPool';\n\nconst instrumentGenericPool = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationGenericPool.GenericPoolInstrumentation({}));\n\nconst _genericPoolIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentGenericPool();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n instrumentationWrappedCallback?.(() =>\n client.on('spanStart', span => {\n const spanJSON = core.spanToJSON(span);\n\n const spanDescription = spanJSON.description;\n\n // typo in emitted span for version <= 0.38.0 of @opentelemetry/instrumentation-generic-pool\n const isGenericPoolSpan =\n spanDescription === 'generic-pool.aquire' || spanDescription === 'generic-pool.acquire';\n\n if (isGenericPoolSpan) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.generic_pool');\n }\n }),\n );\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [generic-pool](https://www.npmjs.com/package/generic-pool) library.\n *\n * For more information, see the [`genericPoolIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/genericpool/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.genericPoolIntegration()],\n * });\n * ```\n */\nconst genericPoolIntegration = core.defineIntegration(_genericPoolIntegration);\n\nexports.genericPoolIntegration = genericPoolIntegration;\nexports.instrumentGenericPool = instrumentGenericPool;\n//# sourceMappingURL=genericPool.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ2VuZXJpY1Bvb2wuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsbUNBQW1DLG1CQUFPLENBQUMsdU9BQTZDO0FBQ3hGLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBLGtKQUFrSjs7QUFFbEo7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQSw4QkFBOEI7QUFDOUIsNkJBQTZCO0FBQzdCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2dlbmVyaWNQb29sLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25HZW5lcmljUG9vbCA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1nZW5lcmljLXBvb2wnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdHZW5lcmljUG9vbCc7XG5cbmNvbnN0IGluc3RydW1lbnRHZW5lcmljUG9vbCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkdlbmVyaWNQb29sLkdlbmVyaWNQb29sSW5zdHJ1bWVudGF0aW9uKHt9KSk7XG5cbmNvbnN0IF9nZW5lcmljUG9vbEludGVncmF0aW9uID0gKCgpID0+IHtcbiAgbGV0IGluc3RydW1lbnRhdGlvbldyYXBwZWRDYWxsYmFjaztcblxuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gaW5zdHJ1bWVudEdlbmVyaWNQb29sKCk7XG4gICAgICBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2sgPSBub2RlQ29yZS5pbnN0cnVtZW50V2hlbldyYXBwZWQoaW5zdHJ1bWVudGF0aW9uKTtcbiAgICB9LFxuXG4gICAgc2V0dXAoY2xpZW50KSB7XG4gICAgICBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2s/LigoKSA9PlxuICAgICAgICBjbGllbnQub24oJ3NwYW5TdGFydCcsIHNwYW4gPT4ge1xuICAgICAgICAgIGNvbnN0IHNwYW5KU09OID0gY29yZS5zcGFuVG9KU09OKHNwYW4pO1xuXG4gICAgICAgICAgY29uc3Qgc3BhbkRlc2NyaXB0aW9uID0gc3BhbkpTT04uZGVzY3JpcHRpb247XG5cbiAgICAgICAgICAvLyB0eXBvIGluIGVtaXR0ZWQgc3BhbiBmb3IgdmVyc2lvbiA8PSAwLjM4LjAgb2YgQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWdlbmVyaWMtcG9vbFxuICAgICAgICAgIGNvbnN0IGlzR2VuZXJpY1Bvb2xTcGFuID1cbiAgICAgICAgICAgIHNwYW5EZXNjcmlwdGlvbiA9PT0gJ2dlbmVyaWMtcG9vbC5hcXVpcmUnIHx8IHNwYW5EZXNjcmlwdGlvbiA9PT0gJ2dlbmVyaWMtcG9vbC5hY3F1aXJlJztcblxuICAgICAgICAgIGlmIChpc0dlbmVyaWNQb29sU3Bhbikge1xuICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTiwgJ2F1dG8uZGIub3RlbC5nZW5lcmljX3Bvb2wnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2dlbmVyaWMtcG9vbF0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvZ2VuZXJpYy1wb29sKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9nZW5lcmljcG9vbC8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmdlbmVyaWNQb29sSW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqIGBgYFxuICovXG5jb25zdCBnZW5lcmljUG9vbEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbiA9IGdlbmVyaWNQb29sSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRHZW5lcmljUG9vbCA9IGluc3RydW1lbnRHZW5lcmljUG9vbDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdlbmVyaWNQb29sLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js ***!
\********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js\");\n\nconst instrumentGoogleGenAI = nodeCore.generateInstrumentOnce(\n core.GOOGLE_GENAI_INTEGRATION_NAME,\n options => new instrumentation.SentryGoogleGenAiInstrumentation(options),\n);\n\nconst _googleGenAIIntegration = ((options = {}) => {\n return {\n name: core.GOOGLE_GENAI_INTEGRATION_NAME,\n setupOnce() {\n instrumentGoogleGenAI(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the Google Generative AI SDK.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments Google GenAI SDK client instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.googleGenAiIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record prompt messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.googleGenAiIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.googleGenAiIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n */\nconst googleGenAIIntegration = core.defineIntegration(_googleGenAIIntegration);\n\nexports.googleGenAIIntegration = googleGenAIIntegration;\nexports.instrumentGoogleGenAI = instrumentGoogleGenAI;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsc0tBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4Q0FBOEM7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsOEJBQThCO0FBQzlCLDZCQUE2QjtBQUM3QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9nb29nbGUtZ2VuYWkvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRHb29nbGVHZW5BSSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIGNvcmUuR09PR0xFX0dFTkFJX0lOVEVHUkFUSU9OX05BTUUsXG4gIG9wdGlvbnMgPT4gbmV3IGluc3RydW1lbnRhdGlvbi5TZW50cnlHb29nbGVHZW5BaUluc3RydW1lbnRhdGlvbihvcHRpb25zKSxcbik7XG5cbmNvbnN0IF9nb29nbGVHZW5BSUludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLkdPT0dMRV9HRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRHb29nbGVHZW5BSShvcHRpb25zKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgR29vZ2xlIEdlbmVyYXRpdmUgQUkgU0RLLlxuICpcbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgZW5hYmxlZCBieSBkZWZhdWx0LlxuICpcbiAqIFdoZW4gY29uZmlndXJlZCwgdGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IGluc3RydW1lbnRzIEdvb2dsZSBHZW5BSSBTREsgY2xpZW50IGluc3RhbmNlc1xuICogdG8gY2FwdHVyZSB0ZWxlbWV0cnkgZGF0YSBmb2xsb3dpbmcgT3BlblRlbGVtZXRyeSBTZW1hbnRpYyBDb252ZW50aW9ucyBmb3IgR2VuZXJhdGl2ZSBBSS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogaW1wb3J0ICogYXMgU2VudHJ5IGZyb20gJ0BzZW50cnkvbm9kZSc7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuZ29vZ2xlR2VuQWlJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogIyMgT3B0aW9uc1xuICpcbiAqIC0gYHJlY29yZElucHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHByb21wdCBtZXNzYWdlcyAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICogLSBgcmVjb3JkT3V0cHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHJlc3BvbnNlIHRleHQgKGRlZmF1bHQ6IHJlc3BlY3RzIGBzZW5kRGVmYXVsdFBpaWAgY2xpZW50IG9wdGlvbilcbiAqXG4gKiAjIyMgRGVmYXVsdCBCZWhhdmlvclxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBpbnRlZ3JhdGlvbiB3aWxsOlxuICogLSBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIE9OTFkgaWYgYHNlbmREZWZhdWx0UGlpYCBpcyBzZXQgdG8gYHRydWVgIGluIHlvdXIgU2VudHJ5IGNsaWVudCBvcHRpb25zXG4gKiAtIE90aGVyd2lzZSwgaW5wdXRzIGFuZCBvdXRwdXRzIGFyZSBOT1QgcmVjb3JkZWQgdW5sZXNzIGV4cGxpY2l0bHkgZW5hYmxlZFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiAvLyBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIHdoZW4gc2VuZERlZmF1bHRQaWkgaXMgZmFsc2VcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5Lmdvb2dsZUdlbkFpSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiB0cnVlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogdHJ1ZVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KTtcbiAqXG4gKiAvLyBOZXZlciByZWNvcmQgaW5wdXRzL291dHB1dHMgcmVnYXJkbGVzcyBvZiBzZW5kRGVmYXVsdFBpaVxuICogU2VudHJ5LmluaXQoe1xuICogICBzZW5kRGVmYXVsdFBpaTogdHJ1ZSxcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5Lmdvb2dsZUdlbkFpSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiBmYWxzZSxcbiAqICAgICAgIHJlY29yZE91dHB1dHM6IGZhbHNlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICovXG5jb25zdCBnb29nbGVHZW5BSUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfZ29vZ2xlR2VuQUlJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuZ29vZ2xlR2VuQUlJbnRlZ3JhdGlvbiA9IGdvb2dsZUdlbkFJSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRHb29nbGVHZW5BSSA9IGluc3RydW1lbnRHb29nbGVHZW5BSTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js ***!
\******************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.10.0 <2'];\n\n/**\n * Represents the patched shape of the Google GenAI module export.\n */\n\n/**\n * Sentry Google GenAI instrumentation using OpenTelemetry.\n */\nclass SentryGoogleGenAiInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-google-genai', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n '@google/genai',\n supportedVersions,\n exports$1 => this._patch(exports$1),\n exports$1 => exports$1,\n // In CJS, @google/genai re-exports from (dist/node/index.cjs) file.\n // Patching only the root module sometimes misses the real implementation or\n // gets overwritten when that file is loaded. We add a file-level patch so that\n // _patch runs again on the concrete implementation\n [\n new instrumentation.InstrumentationNodeModuleFile(\n '@google/genai/dist/node/index.cjs',\n supportedVersions,\n exports$1 => this._patch(exports$1),\n exports$1 => exports$1,\n ),\n ],\n );\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the Google GenAI client constructor.\n */\n _patch(exports$1) {\n const Original = exports$1.GoogleGenAI;\n const config = this.getConfig();\n\n if (typeof Original !== 'function') {\n return exports$1;\n }\n\n const WrappedGoogleGenAI = function ( ...args) {\n // Check if wrapping should be skipped (e.g., when LangChain is handling instrumentation)\n if (core._INTERNAL_shouldSkipAiProviderWrapping(core.GOOGLE_GENAI_INTEGRATION_NAME)) {\n return Reflect.construct(Original, args) ;\n }\n\n const instance = Reflect.construct(Original, args);\n\n return core.instrumentGoogleGenAIClient(instance, config);\n };\n\n // Preserve static and prototype chains\n Object.setPrototypeOf(WrappedGoogleGenAI, Original);\n Object.setPrototypeOf(WrappedGoogleGenAI.prototype, Original.prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedGoogleGenAI, key, descriptor);\n }\n }\n }\n\n // Replace google genai exports with the wrapped constructor\n core.replaceExports(exports$1, 'GoogleGenAI', WrappedGoogleGenAI);\n\n return exports$1;\n }\n}\n\nexports.SentryGoogleGenAiInstrumentation = SentryGoogleGenAiInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQjtBQUMxQjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSx3Q0FBd0M7QUFDeEMiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG5jb25zdCBzdXBwb3J0ZWRWZXJzaW9ucyA9IFsnPj0wLjEwLjAgPDInXTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBwYXRjaGVkIHNoYXBlIG9mIHRoZSBHb29nbGUgR2VuQUkgbW9kdWxlIGV4cG9ydC5cbiAqL1xuXG4vKipcbiAqIFNlbnRyeSBHb29nbGUgR2VuQUkgaW5zdHJ1bWVudGF0aW9uIHVzaW5nIE9wZW5UZWxlbWV0cnkuXG4gKi9cbmNsYXNzIFNlbnRyeUdvb2dsZUdlbkFpSW5zdHJ1bWVudGF0aW9uIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0ge30pIHtcbiAgICBzdXBlcignQHNlbnRyeS9pbnN0cnVtZW50YXRpb24tZ29vZ2xlLWdlbmFpJywgY29yZS5TREtfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgaW5zdHJ1bWVudGF0aW9uIGJ5IGRlZmluaW5nIHRoZSBtb2R1bGVzIHRvIGJlIHBhdGNoZWQuXG4gICAqL1xuICAgaW5pdCgpIHtcbiAgICBjb25zdCBtb2R1bGUgPSBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKFxuICAgICAgJ0Bnb29nbGUvZ2VuYWknLFxuICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICBleHBvcnRzJDEgPT4gdGhpcy5fcGF0Y2goZXhwb3J0cyQxKSxcbiAgICAgIGV4cG9ydHMkMSA9PiBleHBvcnRzJDEsXG4gICAgICAvLyBJbiBDSlMsIEBnb29nbGUvZ2VuYWkgcmUtZXhwb3J0cyBmcm9tIChkaXN0L25vZGUvaW5kZXguY2pzKSBmaWxlLlxuICAgICAgLy8gUGF0Y2hpbmcgb25seSB0aGUgcm9vdCBtb2R1bGUgc29tZXRpbWVzIG1pc3NlcyB0aGUgcmVhbCBpbXBsZW1lbnRhdGlvbiBvclxuICAgICAgLy8gZ2V0cyBvdmVyd3JpdHRlbiB3aGVuIHRoYXQgZmlsZSBpcyBsb2FkZWQuIFdlIGFkZCBhIGZpbGUtbGV2ZWwgcGF0Y2ggc28gdGhhdFxuICAgICAgLy8gX3BhdGNoIHJ1bnMgYWdhaW4gb24gdGhlIGNvbmNyZXRlIGltcGxlbWVudGF0aW9uXG4gICAgICBbXG4gICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZUZpbGUoXG4gICAgICAgICAgJ0Bnb29nbGUvZ2VuYWkvZGlzdC9ub2RlL2luZGV4LmNqcycsXG4gICAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgICAgZXhwb3J0cyQxID0+IHRoaXMuX3BhdGNoKGV4cG9ydHMkMSksXG4gICAgICAgICAgZXhwb3J0cyQxID0+IGV4cG9ydHMkMSxcbiAgICAgICAgKSxcbiAgICAgIF0sXG4gICAgKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcmUgcGF0Y2ggbG9naWMgYXBwbHlpbmcgaW5zdHJ1bWVudGF0aW9uIHRvIHRoZSBHb29nbGUgR2VuQUkgY2xpZW50IGNvbnN0cnVjdG9yLlxuICAgKi9cbiAgIF9wYXRjaChleHBvcnRzJDEpIHtcbiAgICBjb25zdCBPcmlnaW5hbCA9IGV4cG9ydHMkMS5Hb29nbGVHZW5BSTtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldENvbmZpZygpO1xuXG4gICAgaWYgKHR5cGVvZiBPcmlnaW5hbCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgICB9XG5cbiAgICBjb25zdCBXcmFwcGVkR29vZ2xlR2VuQUkgPSBmdW5jdGlvbiAoIC4uLmFyZ3MpIHtcbiAgICAgIC8vIENoZWNrIGlmIHdyYXBwaW5nIHNob3VsZCBiZSBza2lwcGVkIChlLmcuLCB3aGVuIExhbmdDaGFpbiBpcyBoYW5kbGluZyBpbnN0cnVtZW50YXRpb24pXG4gICAgICBpZiAoY29yZS5fSU5URVJOQUxfc2hvdWxkU2tpcEFpUHJvdmlkZXJXcmFwcGluZyhjb3JlLkdPT0dMRV9HRU5BSV9JTlRFR1JBVElPTl9OQU1FKSkge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5jb25zdHJ1Y3QoT3JpZ2luYWwsIGFyZ3MpIDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5zdGFuY2UgPSBSZWZsZWN0LmNvbnN0cnVjdChPcmlnaW5hbCwgYXJncyk7XG5cbiAgICAgIHJldHVybiBjb3JlLmluc3RydW1lbnRHb29nbGVHZW5BSUNsaWVudChpbnN0YW5jZSwgY29uZmlnKTtcbiAgICB9O1xuXG4gICAgLy8gUHJlc2VydmUgc3RhdGljIGFuZCBwcm90b3R5cGUgY2hhaW5zXG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRHb29nbGVHZW5BSSwgT3JpZ2luYWwpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZihXcmFwcGVkR29vZ2xlR2VuQUkucHJvdG90eXBlLCBPcmlnaW5hbC5wcm90b3R5cGUpO1xuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoT3JpZ2luYWwpKSB7XG4gICAgICBpZiAoIVsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10uaW5jbHVkZXMoa2V5KSkge1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihPcmlnaW5hbCwga2V5KTtcbiAgICAgICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoV3JhcHBlZEdvb2dsZUdlbkFJLCBrZXksIGRlc2NyaXB0b3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVwbGFjZSBnb29nbGUgZ2VuYWkgZXhwb3J0cyB3aXRoIHRoZSB3cmFwcGVkIGNvbnN0cnVjdG9yXG4gICAgY29yZS5yZXBsYWNlRXhwb3J0cyhleHBvcnRzJDEsICdHb29nbGVHZW5BSScsIFdyYXBwZWRHb29nbGVHZW5BSSk7XG5cbiAgICByZXR1cm4gZXhwb3J0cyQxO1xuICB9XG59XG5cbmV4cG9ydHMuU2VudHJ5R29vZ2xlR2VuQWlJbnN0cnVtZW50YXRpb24gPSBTZW50cnlHb29nbGVHZW5BaUluc3RydW1lbnRhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluc3RydW1lbnRhdGlvbi5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentationGraphql = __webpack_require__(/*! @opentelemetry/instrumentation-graphql */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-graphql@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-graphql/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst opentelemetry = __webpack_require__(/*! @sentry/opentelemetry */ \"(rsc)/./node_modules/.pnpm/@sentry+opentelemetry@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hoo_70f539428297572a9e3752da9c315982/node_modules/@sentry/opentelemetry/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Graphql';\n\nconst instrumentGraphql = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationGraphql.GraphQLInstrumentation,\n (_options) => {\n const options = getOptionsWithDefaults(_options);\n\n return {\n ...options,\n responseHook(span, result) {\n nodeCore.addOriginToSpan(span, 'auto.graphql.otel.graphql');\n\n // We want to ensure spans are marked as errored if there are errors in the result\n // We only do that if the span is not already marked with a status\n const resultWithMaybeError = result ;\n if (resultWithMaybeError.errors?.length && !core.spanToJSON(span).status) {\n span.setStatus({ code: api.SpanStatusCode.ERROR });\n }\n\n const attributes = core.spanToJSON(span).data;\n\n // If operation.name is not set, we fall back to use operation.type only\n const operationType = attributes['graphql.operation.type'];\n const operationName = attributes['graphql.operation.name'];\n\n if (options.useOperationNameForRootSpan && operationType) {\n const rootSpan = core.getRootSpan(span);\n const rootSpanAttributes = core.spanToJSON(rootSpan).data;\n\n const existingOperations = rootSpanAttributes[opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION] || [];\n\n const newOperation = operationName ? `${operationType} ${operationName}` : `${operationType}`;\n\n // We keep track of each operation on the root span\n // This can either be a string, or an array of strings (if there are multiple operations)\n if (Array.isArray(existingOperations)) {\n (existingOperations ).push(newOperation);\n rootSpan.setAttribute(opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, existingOperations);\n } else if (typeof existingOperations === 'string') {\n rootSpan.setAttribute(opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, [existingOperations, newOperation]);\n } else {\n rootSpan.setAttribute(opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, newOperation);\n }\n\n if (!core.spanToJSON(rootSpan).data['original-description']) {\n rootSpan.setAttribute('original-description', core.spanToJSON(rootSpan).description);\n }\n // Important for e.g. @sentry/aws-serverless because this would otherwise overwrite the name again\n rootSpan.updateName(\n `${core.spanToJSON(rootSpan).data['original-description']} (${getGraphqlOperationNamesFromAttribute(\n existingOperations,\n )})`,\n );\n }\n },\n };\n },\n);\n\nconst _graphqlIntegration = ((options = {}) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n // We set defaults here, too, because otherwise we'd update the instrumentation config\n // to the config without defaults, as `generateInstrumentOnce` automatically calls `setConfig(options)`\n // when being called the second time\n instrumentGraphql(getOptionsWithDefaults(options));\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [graphql](https://www.npmjs.com/package/graphql) library.\n *\n * For more information, see the [`graphqlIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/graphql/).\n *\n * @param {GraphqlOptions} options Configuration options for the GraphQL integration.\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.graphqlIntegration()],\n * });\n */\nconst graphqlIntegration = core.defineIntegration(_graphqlIntegration);\n\nfunction getOptionsWithDefaults(options) {\n return {\n ignoreResolveSpans: true,\n ignoreTrivialResolveSpans: true,\n useOperationNameForRootSpan: true,\n ...options,\n };\n}\n\n// copy from packages/opentelemetry/utils\nfunction getGraphqlOperationNamesFromAttribute(attr) {\n if (Array.isArray(attr)) {\n // oxlint-disable-next-line typescript/require-array-sort-compare\n const sorted = attr.slice().sort();\n\n // Up to 5 items, we just add all of them\n if (sorted.length <= 5) {\n return sorted.join(', ');\n } else {\n // Else, we add the first 5 and the diff of other operations\n return `${sorted.slice(0, 5).join(', ')}, +${sorted.length - 5}`;\n }\n }\n\n return `${attr}`;\n}\n\nexports.graphqlIntegration = graphqlIntegration;\nexports.instrumentGraphql = instrumentGraphql;\n//# sourceMappingURL=graphql.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ3JhcGhxbC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLCtCQUErQixtQkFBTyxDQUFDLHdOQUF3QztBQUMvRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1CO0FBQzVDLHNCQUFzQixtQkFBTyxDQUFDLHdPQUF1Qjs7QUFFckQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQixnQ0FBZ0M7QUFDM0Q7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSxrREFBa0QsZUFBZSxFQUFFLGNBQWMsT0FBTyxjQUFjOztBQUV0RztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWTtBQUNaO0FBQ0EsWUFBWTtBQUNaO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsd0RBQXdELEdBQUc7QUFDMUU7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLEdBQUc7QUFDSDs7QUFFQSwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLGdCQUFnQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQSxnQkFBZ0IsOEJBQThCLEtBQUssa0JBQWtCO0FBQ3JFO0FBQ0E7O0FBRUEsWUFBWSxLQUFLO0FBQ2pCOztBQUVBLDBCQUEwQjtBQUMxQix5QkFBeUI7QUFDekIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ3JhcGhxbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCBpbnN0cnVtZW50YXRpb25HcmFwaHFsID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWdyYXBocWwnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IG9wZW50ZWxlbWV0cnkgPSByZXF1aXJlKCdAc2VudHJ5L29wZW50ZWxlbWV0cnknKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdHcmFwaHFsJztcblxuY29uc3QgaW5zdHJ1bWVudEdyYXBocWwgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICBpbnN0cnVtZW50YXRpb25HcmFwaHFsLkdyYXBoUUxJbnN0cnVtZW50YXRpb24sXG4gIChfb3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBnZXRPcHRpb25zV2l0aERlZmF1bHRzKF9vcHRpb25zKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgcmVzcG9uc2VIb29rKHNwYW4sIHJlc3VsdCkge1xuICAgICAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uZ3JhcGhxbC5vdGVsLmdyYXBocWwnKTtcblxuICAgICAgICAvLyBXZSB3YW50IHRvIGVuc3VyZSBzcGFucyBhcmUgbWFya2VkIGFzIGVycm9yZWQgaWYgdGhlcmUgYXJlIGVycm9ycyBpbiB0aGUgcmVzdWx0XG4gICAgICAgIC8vIFdlIG9ubHkgZG8gdGhhdCBpZiB0aGUgc3BhbiBpcyBub3QgYWxyZWFkeSBtYXJrZWQgd2l0aCBhIHN0YXR1c1xuICAgICAgICBjb25zdCByZXN1bHRXaXRoTWF5YmVFcnJvciA9IHJlc3VsdCA7XG4gICAgICAgIGlmIChyZXN1bHRXaXRoTWF5YmVFcnJvci5lcnJvcnM/Lmxlbmd0aCAmJiAhY29yZS5zcGFuVG9KU09OKHNwYW4pLnN0YXR1cykge1xuICAgICAgICAgIHNwYW4uc2V0U3RhdHVzKHsgY29kZTogYXBpLlNwYW5TdGF0dXNDb2RlLkVSUk9SIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYXR0cmlidXRlcyA9IGNvcmUuc3BhblRvSlNPTihzcGFuKS5kYXRhO1xuXG4gICAgICAgIC8vIElmIG9wZXJhdGlvbi5uYW1lIGlzIG5vdCBzZXQsIHdlIGZhbGwgYmFjayB0byB1c2Ugb3BlcmF0aW9uLnR5cGUgb25seVxuICAgICAgICBjb25zdCBvcGVyYXRpb25UeXBlID0gYXR0cmlidXRlc1snZ3JhcGhxbC5vcGVyYXRpb24udHlwZSddO1xuICAgICAgICBjb25zdCBvcGVyYXRpb25OYW1lID0gYXR0cmlidXRlc1snZ3JhcGhxbC5vcGVyYXRpb24ubmFtZSddO1xuXG4gICAgICAgIGlmIChvcHRpb25zLnVzZU9wZXJhdGlvbk5hbWVGb3JSb290U3BhbiAmJiBvcGVyYXRpb25UeXBlKSB7XG4gICAgICAgICAgY29uc3Qgcm9vdFNwYW4gPSBjb3JlLmdldFJvb3RTcGFuKHNwYW4pO1xuICAgICAgICAgIGNvbnN0IHJvb3RTcGFuQXR0cmlidXRlcyA9IGNvcmUuc3BhblRvSlNPTihyb290U3BhbikuZGF0YTtcblxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nT3BlcmF0aW9ucyA9IHJvb3RTcGFuQXR0cmlidXRlc1tvcGVudGVsZW1ldHJ5LlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfR1JBUEhRTF9PUEVSQVRJT05dIHx8IFtdO1xuXG4gICAgICAgICAgY29uc3QgbmV3T3BlcmF0aW9uID0gb3BlcmF0aW9uTmFtZSA/IGAke29wZXJhdGlvblR5cGV9ICR7b3BlcmF0aW9uTmFtZX1gIDogYCR7b3BlcmF0aW9uVHlwZX1gO1xuXG4gICAgICAgICAgLy8gV2Uga2VlcCB0cmFjayBvZiBlYWNoIG9wZXJhdGlvbiBvbiB0aGUgcm9vdCBzcGFuXG4gICAgICAgICAgLy8gVGhpcyBjYW4gZWl0aGVyIGJlIGEgc3RyaW5nLCBvciBhbiBhcnJheSBvZiBzdHJpbmdzIChpZiB0aGVyZSBhcmUgbXVsdGlwbGUgb3BlcmF0aW9ucylcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShleGlzdGluZ09wZXJhdGlvbnMpKSB7XG4gICAgICAgICAgICAoZXhpc3RpbmdPcGVyYXRpb25zICkucHVzaChuZXdPcGVyYXRpb24pO1xuICAgICAgICAgICAgcm9vdFNwYW4uc2V0QXR0cmlidXRlKG9wZW50ZWxlbWV0cnkuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9HUkFQSFFMX09QRVJBVElPTiwgZXhpc3RpbmdPcGVyYXRpb25zKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBleGlzdGluZ09wZXJhdGlvbnMgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICByb290U3Bhbi5zZXRBdHRyaWJ1dGUob3BlbnRlbGVtZXRyeS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX0dSQVBIUUxfT1BFUkFUSU9OLCBbZXhpc3RpbmdPcGVyYXRpb25zLCBuZXdPcGVyYXRpb25dKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcm9vdFNwYW4uc2V0QXR0cmlidXRlKG9wZW50ZWxlbWV0cnkuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9HUkFQSFFMX09QRVJBVElPTiwgbmV3T3BlcmF0aW9uKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIWNvcmUuc3BhblRvSlNPTihyb290U3BhbikuZGF0YVsnb3JpZ2luYWwtZGVzY3JpcHRpb24nXSkge1xuICAgICAgICAgICAgcm9vdFNwYW4uc2V0QXR0cmlidXRlKCdvcmlnaW5hbC1kZXNjcmlwdGlvbicsIGNvcmUuc3BhblRvSlNPTihyb290U3BhbikuZGVzY3JpcHRpb24pO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBJbXBvcnRhbnQgZm9yIGUuZy4gQHNlbnRyeS9hd3Mtc2VydmVybGVzcyBiZWNhdXNlIHRoaXMgd291bGQgb3RoZXJ3aXNlIG92ZXJ3cml0ZSB0aGUgbmFtZSBhZ2FpblxuICAgICAgICAgIHJvb3RTcGFuLnVwZGF0ZU5hbWUoXG4gICAgICAgICAgICBgJHtjb3JlLnNwYW5Ub0pTT04ocm9vdFNwYW4pLmRhdGFbJ29yaWdpbmFsLWRlc2NyaXB0aW9uJ119ICgke2dldEdyYXBocWxPcGVyYXRpb25OYW1lc0Zyb21BdHRyaWJ1dGUoXG4gICAgICAgICAgICAgIGV4aXN0aW5nT3BlcmF0aW9ucyxcbiAgICAgICAgICAgICl9KWAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9O1xuICB9LFxuKTtcblxuY29uc3QgX2dyYXBocWxJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICAvLyBXZSBzZXQgZGVmYXVsdHMgaGVyZSwgdG9vLCBiZWNhdXNlIG90aGVyd2lzZSB3ZSdkIHVwZGF0ZSB0aGUgaW5zdHJ1bWVudGF0aW9uIGNvbmZpZ1xuICAgICAgLy8gdG8gdGhlIGNvbmZpZyB3aXRob3V0IGRlZmF1bHRzLCBhcyBgZ2VuZXJhdGVJbnN0cnVtZW50T25jZWAgYXV0b21hdGljYWxseSBjYWxscyBgc2V0Q29uZmlnKG9wdGlvbnMpYFxuICAgICAgLy8gd2hlbiBiZWluZyBjYWxsZWQgdGhlIHNlY29uZCB0aW1lXG4gICAgICBpbnN0cnVtZW50R3JhcGhxbChnZXRPcHRpb25zV2l0aERlZmF1bHRzKG9wdGlvbnMpKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2dyYXBocWxdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2dyYXBocWwpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BncmFwaHFsSW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvZ3JhcGhxbC8pLlxuICpcbiAqIEBwYXJhbSB7R3JhcGhxbE9wdGlvbnN9IG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgR3JhcGhRTCBpbnRlZ3JhdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogIGludGVncmF0aW9uczogW1NlbnRyeS5ncmFwaHFsSW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqL1xuY29uc3QgZ3JhcGhxbEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfZ3JhcGhxbEludGVncmF0aW9uKTtcblxuZnVuY3Rpb24gZ2V0T3B0aW9uc1dpdGhEZWZhdWx0cyhvcHRpb25zKSB7XG4gIHJldHVybiB7XG4gICAgaWdub3JlUmVzb2x2ZVNwYW5zOiB0cnVlLFxuICAgIGlnbm9yZVRyaXZpYWxSZXNvbHZlU3BhbnM6IHRydWUsXG4gICAgdXNlT3BlcmF0aW9uTmFtZUZvclJvb3RTcGFuOiB0cnVlLFxuICAgIC4uLm9wdGlvbnMsXG4gIH07XG59XG5cbi8vIGNvcHkgZnJvbSBwYWNrYWdlcy9vcGVudGVsZW1ldHJ5L3V0aWxzXG5mdW5jdGlvbiBnZXRHcmFwaHFsT3BlcmF0aW9uTmFtZXNGcm9tQXR0cmlidXRlKGF0dHIpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoYXR0cikpIHtcbiAgICAvLyBveGxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdHlwZXNjcmlwdC9yZXF1aXJlLWFycmF5LXNvcnQtY29tcGFyZVxuICAgIGNvbnN0IHNvcnRlZCA9IGF0dHIuc2xpY2UoKS5zb3J0KCk7XG5cbiAgICAvLyBVcCB0byA1IGl0ZW1zLCB3ZSBqdXN0IGFkZCBhbGwgb2YgdGhlbVxuICAgIGlmIChzb3J0ZWQubGVuZ3RoIDw9IDUpIHtcbiAgICAgIHJldHVybiBzb3J0ZWQuam9pbignLCAnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRWxzZSwgd2UgYWRkIHRoZSBmaXJzdCA1IGFuZCB0aGUgZGlmZiBvZiBvdGhlciBvcGVyYXRpb25zXG4gICAgICByZXR1cm4gYCR7c29ydGVkLnNsaWNlKDAsIDUpLmpvaW4oJywgJyl9LCArJHtzb3J0ZWQubGVuZ3RoIC0gNX1gO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBgJHthdHRyfWA7XG59XG5cbmV4cG9ydHMuZ3JhcGhxbEludGVncmF0aW9uID0gZ3JhcGhxbEludGVncmF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50R3JhcGhxbCA9IGluc3RydW1lbnRHcmFwaHFsO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z3JhcGhxbC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationHapi = __webpack_require__(/*! @opentelemetry/instrumentation-hapi */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-hapi@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-hapi/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../../debug-build.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\nconst INTEGRATION_NAME = 'Hapi';\n\nconst instrumentHapi = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationHapi.HapiInstrumentation());\n\nconst _hapiIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentHapi();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Hapi](https://hapi.dev/).\n *\n * If you also want to capture errors, you need to call `setupHapiErrorHandler(server)` after you set up your server.\n *\n * For more information, see the [hapi documentation](https://docs.sentry.io/platforms/javascript/guides/hapi/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.hapiIntegration()],\n * })\n * ```\n */\nconst hapiIntegration = core.defineIntegration(_hapiIntegration);\n\nfunction isErrorEvent(event) {\n return !!(event && typeof event === 'object' && 'error' in event && event.error);\n}\n\nfunction sendErrorToSentry(errorData) {\n core.captureException(errorData, {\n mechanism: {\n type: 'auto.function.hapi',\n handled: false,\n },\n });\n}\n\nconst hapiErrorPlugin = {\n name: 'SentryHapiErrorPlugin',\n version: core.SDK_VERSION,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n register: async function (serverArg) {\n const server = serverArg ;\n\n server.events.on({ name: 'request', channels: ['error'] }, (request, event) => {\n if (core.getIsolationScope() !== core.getDefaultIsolationScope()) {\n const route = request.route;\n if (route.path) {\n core.getIsolationScope().setTransactionName(`${route.method.toUpperCase()} ${route.path}`);\n }\n } else {\n debugBuild.DEBUG_BUILD &&\n core.debug.warn('Isolation scope is still the default isolation scope - skipping setting transactionName');\n }\n\n if (isErrorEvent(event)) {\n sendErrorToSentry(event.error);\n }\n });\n },\n};\n\n/**\n * Add a Hapi plugin to capture errors to Sentry.\n *\n * @param server The Hapi server to attach the error handler to\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const Hapi = require('@hapi/hapi');\n *\n * const init = async () => {\n * const server = Hapi.server();\n *\n * // all your routes here\n *\n * await Sentry.setupHapiErrorHandler(server);\n *\n * await server.start();\n * };\n * ```\n */\nasync function setupHapiErrorHandler(server) {\n await server.register(hapiErrorPlugin);\n\n // Sadly, middleware spans do not go through `requestHook`, so we handle those here\n // We register this hook in this method, because if we register it in the integration `setup`,\n // it would always run even for users that are not even using hapi\n const client = core.getClient();\n if (client) {\n client.on('spanStart', span => {\n addHapiSpanAttributes(span);\n });\n }\n\n nodeCore.ensureIsWrapped(server.register, 'hapi');\n}\n\nfunction addHapiSpanAttributes(span) {\n const attributes = core.spanToJSON(span).data;\n\n // this is one of: router, plugin, server.ext\n const type = attributes['hapi.type'];\n\n // If this is already set, or we have no Hapi span, no need to process again...\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.hapi',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.hapi`,\n });\n}\n\nexports.hapiErrorPlugin = hapiErrorPlugin;\nexports.hapiIntegration = hapiIntegration;\nexports.instrumentHapi = instrumentHapi;\nexports.setupHapiErrorHandler = setupHapiErrorHandler;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaGFwaS9pbmRleC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSw0QkFBNEIsbUJBQU8sQ0FBQywrTUFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxtSUFBeUI7O0FBRXBEOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHVCQUF1QixzQ0FBc0M7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EseURBQXlELDRCQUE0QixFQUFFLFdBQVc7QUFDbEc7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNENBQTRDLEtBQUs7QUFDakQsR0FBRztBQUNIOztBQUVBLHVCQUF1QjtBQUN2Qix1QkFBdUI7QUFDdkIsc0JBQXNCO0FBQ3RCLDZCQUE2QjtBQUM3QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9oYXBpL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25IYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWhhcGknKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi8uLi8uLi9kZWJ1Zy1idWlsZC5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0hhcGknO1xuXG5jb25zdCBpbnN0cnVtZW50SGFwaSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkhhcGkuSGFwaUluc3RydW1lbnRhdGlvbigpKTtcblxuY29uc3QgX2hhcGlJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50SGFwaSgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIFtIYXBpXShodHRwczovL2hhcGkuZGV2LykuXG4gKlxuICogSWYgeW91IGFsc28gd2FudCB0byBjYXB0dXJlIGVycm9ycywgeW91IG5lZWQgdG8gY2FsbCBgc2V0dXBIYXBpRXJyb3JIYW5kbGVyKHNlcnZlcilgIGFmdGVyIHlvdSBzZXQgdXAgeW91ciBzZXJ2ZXIuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2hhcGkgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvaGFwaS8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5oYXBpSW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGhhcGlJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2hhcGlJbnRlZ3JhdGlvbik7XG5cbmZ1bmN0aW9uIGlzRXJyb3JFdmVudChldmVudCkge1xuICByZXR1cm4gISEoZXZlbnQgJiYgdHlwZW9mIGV2ZW50ID09PSAnb2JqZWN0JyAmJiAnZXJyb3InIGluIGV2ZW50ICYmIGV2ZW50LmVycm9yKTtcbn1cblxuZnVuY3Rpb24gc2VuZEVycm9yVG9TZW50cnkoZXJyb3JEYXRhKSB7XG4gIGNvcmUuY2FwdHVyZUV4Y2VwdGlvbihlcnJvckRhdGEsIHtcbiAgICBtZWNoYW5pc206IHtcbiAgICAgIHR5cGU6ICdhdXRvLmZ1bmN0aW9uLmhhcGknLFxuICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgfSxcbiAgfSk7XG59XG5cbmNvbnN0IGhhcGlFcnJvclBsdWdpbiA9IHtcbiAgbmFtZTogJ1NlbnRyeUhhcGlFcnJvclBsdWdpbicsXG4gIHZlcnNpb246IGNvcmUuU0RLX1ZFUlNJT04sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHJlZ2lzdGVyOiBhc3luYyBmdW5jdGlvbiAoc2VydmVyQXJnKSB7XG4gICAgY29uc3Qgc2VydmVyID0gc2VydmVyQXJnIDtcblxuICAgIHNlcnZlci5ldmVudHMub24oeyBuYW1lOiAncmVxdWVzdCcsIGNoYW5uZWxzOiBbJ2Vycm9yJ10gfSwgKHJlcXVlc3QsIGV2ZW50KSA9PiB7XG4gICAgICBpZiAoY29yZS5nZXRJc29sYXRpb25TY29wZSgpICE9PSBjb3JlLmdldERlZmF1bHRJc29sYXRpb25TY29wZSgpKSB7XG4gICAgICAgIGNvbnN0IHJvdXRlID0gcmVxdWVzdC5yb3V0ZTtcbiAgICAgICAgaWYgKHJvdXRlLnBhdGgpIHtcbiAgICAgICAgICBjb3JlLmdldElzb2xhdGlvblNjb3BlKCkuc2V0VHJhbnNhY3Rpb25OYW1lKGAke3JvdXRlLm1ldGhvZC50b1VwcGVyQ2FzZSgpfSAke3JvdXRlLnBhdGh9YCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRlYnVnQnVpbGQuREVCVUdfQlVJTEQgJiZcbiAgICAgICAgICBjb3JlLmRlYnVnLndhcm4oJ0lzb2xhdGlvbiBzY29wZSBpcyBzdGlsbCB0aGUgZGVmYXVsdCBpc29sYXRpb24gc2NvcGUgLSBza2lwcGluZyBzZXR0aW5nIHRyYW5zYWN0aW9uTmFtZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNFcnJvckV2ZW50KGV2ZW50KSkge1xuICAgICAgICBzZW5kRXJyb3JUb1NlbnRyeShldmVudC5lcnJvcik7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sXG59O1xuXG4vKipcbiAqIEFkZCBhIEhhcGkgcGx1Z2luIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gc2VydmVyIFRoZSBIYXBpIHNlcnZlciB0byBhdHRhY2ggdGhlIGVycm9yIGhhbmRsZXIgdG9cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBIYXBpID0gcmVxdWlyZSgnQGhhcGkvaGFwaScpO1xuICpcbiAqIGNvbnN0IGluaXQgPSBhc3luYyAoKSA9PiB7XG4gKiAgIGNvbnN0IHNlcnZlciA9IEhhcGkuc2VydmVyKCk7XG4gKlxuICogICAvLyBhbGwgeW91ciByb3V0ZXMgaGVyZVxuICpcbiAqICAgYXdhaXQgU2VudHJ5LnNldHVwSGFwaUVycm9ySGFuZGxlcihzZXJ2ZXIpO1xuICpcbiAqICAgYXdhaXQgc2VydmVyLnN0YXJ0KCk7XG4gKiB9O1xuICogYGBgXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHNldHVwSGFwaUVycm9ySGFuZGxlcihzZXJ2ZXIpIHtcbiAgYXdhaXQgc2VydmVyLnJlZ2lzdGVyKGhhcGlFcnJvclBsdWdpbik7XG5cbiAgLy8gU2FkbHksIG1pZGRsZXdhcmUgc3BhbnMgZG8gbm90IGdvIHRocm91Z2ggYHJlcXVlc3RIb29rYCwgc28gd2UgaGFuZGxlIHRob3NlIGhlcmVcbiAgLy8gV2UgcmVnaXN0ZXIgdGhpcyBob29rIGluIHRoaXMgbWV0aG9kLCBiZWNhdXNlIGlmIHdlIHJlZ2lzdGVyIGl0IGluIHRoZSBpbnRlZ3JhdGlvbiBgc2V0dXBgLFxuICAvLyBpdCB3b3VsZCBhbHdheXMgcnVuIGV2ZW4gZm9yIHVzZXJzIHRoYXQgYXJlIG5vdCBldmVuIHVzaW5nIGhhcGlcbiAgY29uc3QgY2xpZW50ID0gY29yZS5nZXRDbGllbnQoKTtcbiAgaWYgKGNsaWVudCkge1xuICAgIGNsaWVudC5vbignc3BhblN0YXJ0Jywgc3BhbiA9PiB7XG4gICAgICBhZGRIYXBpU3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgfSk7XG4gIH1cblxuICBub2RlQ29yZS5lbnN1cmVJc1dyYXBwZWQoc2VydmVyLnJlZ2lzdGVyLCAnaGFwaScpO1xufVxuXG5mdW5jdGlvbiBhZGRIYXBpU3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBhdHRyaWJ1dGVzID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGE7XG5cbiAgLy8gdGhpcyBpcyBvbmUgb2Y6IHJvdXRlciwgcGx1Z2luLCBzZXJ2ZXIuZXh0XG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydoYXBpLnR5cGUnXTtcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIEhhcGkgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF0gfHwgIXR5cGUpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBzcGFuLnNldEF0dHJpYnV0ZXMoe1xuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1JJR0lOXTogJ2F1dG8uaHR0cC5vdGVsLmhhcGknLFxuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiBgJHt0eXBlfS5oYXBpYCxcbiAgfSk7XG59XG5cbmV4cG9ydHMuaGFwaUVycm9yUGx1Z2luID0gaGFwaUVycm9yUGx1Z2luO1xuZXhwb3J0cy5oYXBpSW50ZWdyYXRpb24gPSBoYXBpSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRIYXBpID0gaW5zdHJ1bWVudEhhcGk7XG5leHBvcnRzLnNldHVwSGFwaUVycm9ySGFuZGxlciA9IHNldHVwSGFwaUVycm9ySGFuZGxlcjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js ***!
\****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst AttributeNames = {\n HONO_TYPE: 'hono.type',\n HONO_NAME: 'hono.name',\n} ;\n\nconst HonoTypes = {\n MIDDLEWARE: 'middleware',\n REQUEST_HANDLER: 'request_handler',\n} ;\n\nexports.AttributeNames = AttributeNames;\nexports.HonoTypes = HonoTypes;\n//# sourceMappingURL=constants.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9jb25zdGFudHMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEU7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0JBQXNCO0FBQ3RCLGlCQUFpQjtBQUNqQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9ob25vL2NvbnN0YW50cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgQXR0cmlidXRlTmFtZXMgPSB7XG4gIEhPTk9fVFlQRTogJ2hvbm8udHlwZScsXG4gIEhPTk9fTkFNRTogJ2hvbm8ubmFtZScsXG59IDtcblxuY29uc3QgSG9ub1R5cGVzID0ge1xuICBNSURETEVXQVJFOiAnbWlkZGxld2FyZScsXG4gIFJFUVVFU1RfSEFORExFUjogJ3JlcXVlc3RfaGFuZGxlcicsXG59IDtcblxuZXhwb3J0cy5BdHRyaWJ1dGVOYW1lcyA9IEF0dHJpYnV0ZU5hbWVzO1xuZXhwb3J0cy5Ib25vVHlwZXMgPSBIb25vVHlwZXM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jb25zdGFudHMuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../../debug-build.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js\");\n\nconst INTEGRATION_NAME = 'Hono';\n\nfunction addHonoSpanAttributes(span) {\n const attributes = core.spanToJSON(span).data;\n const type = attributes[constants.AttributeNames.HONO_TYPE];\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.hono',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.hono`,\n });\n\n const name = attributes[constants.AttributeNames.HONO_NAME];\n if (typeof name === 'string') {\n span.updateName(name);\n }\n\n if (core.getIsolationScope() === core.getDefaultIsolationScope()) {\n debugBuild.DEBUG_BUILD && core.debug.warn('Isolation scope is default isolation scope - skipping setting transactionName');\n return;\n }\n\n const route = attributes[semanticConventions.ATTR_HTTP_ROUTE];\n const method = attributes[semanticConventions.ATTR_HTTP_REQUEST_METHOD];\n if (typeof route === 'string' && typeof method === 'string') {\n core.getIsolationScope().setTransactionName(`${method} ${route}`);\n }\n}\n\nconst instrumentHono = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentation.HonoInstrumentation({\n responseHook: span => {\n addHonoSpanAttributes(span);\n },\n }),\n);\n\nconst _honoIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentHono();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Hono](https://hono.dev/).\n *\n * If you also want to capture errors, you need to call `setupHonoErrorHandler(app)` after you set up your Hono server.\n *\n * For more information, see the [hono documentation](https://docs.sentry.io/platforms/javascript/guides/hono/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.honoIntegration()],\n * })\n * ```\n */\nconst honoIntegration = core.defineIntegration(_honoIntegration);\n\nfunction honoRequestHandler() {\n return async function sentryRequestMiddleware(context, next) {\n const normalizedRequest = core.httpRequestToRequestData(context.req);\n core.getIsolationScope().setSDKProcessingMetadata({ normalizedRequest });\n await next();\n };\n}\n\nfunction defaultShouldHandleError(context) {\n const statusCode = context.res.status;\n return statusCode >= 500;\n}\n\nfunction honoErrorHandler(options) {\n return async function sentryErrorMiddleware(context, next) {\n await next();\n\n const shouldHandleError = options?.shouldHandleError || defaultShouldHandleError;\n if (shouldHandleError(context)) {\n (context.res ).sentry = core.captureException(context.error, {\n mechanism: {\n type: 'auto.middleware.hono',\n handled: false,\n },\n });\n }\n };\n}\n\n/**\n * Add a Hono error handler to capture errors to Sentry.\n *\n * @param app The Hono instances\n * @param options Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const { Hono } = require(\"hono\");\n *\n * const app = new Hono();\n *\n * Sentry.setupHonoErrorHandler(app);\n *\n * // Add your routes, etc.\n * ```\n */\nfunction setupHonoErrorHandler(\n app,\n options,\n) {\n app.use(honoRequestHandler());\n app.use(honoErrorHandler(options));\n nodeCore.ensureIsWrapped(app.use, 'hono');\n}\n\nexports.honoIntegration = honoIntegration;\nexports.instrumentHono = instrumentHono;\nexports.setupHonoErrorHandler = setupHonoErrorHandler;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbmRleC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxtSUFBeUI7QUFDcEQsa0JBQWtCLG1CQUFPLENBQUMsa0pBQWdCO0FBQzFDLHdCQUF3QixtQkFBTyxDQUFDLDhKQUFzQjs7QUFFdEQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSw0Q0FBNEMsS0FBSztBQUNqRCxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCxRQUFRLEVBQUUsTUFBTTtBQUNuRTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCxtQkFBbUI7QUFDM0U7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsdUJBQXVCO0FBQ3ZCLHNCQUFzQjtBQUN0Qiw2QkFBNkI7QUFDN0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3Qgc2VtYW50aWNDb252ZW50aW9ucyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3NlbWFudGljLWNvbnZlbnRpb25zJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBkZWJ1Z0J1aWxkID0gcmVxdWlyZSgnLi4vLi4vLi4vZGVidWctYnVpbGQuanMnKTtcbmNvbnN0IGNvbnN0YW50cyA9IHJlcXVpcmUoJy4vY29uc3RhbnRzLmpzJyk7XG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCcuL2luc3RydW1lbnRhdGlvbi5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0hvbm8nO1xuXG5mdW5jdGlvbiBhZGRIb25vU3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBhdHRyaWJ1dGVzID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGE7XG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzW2NvbnN0YW50cy5BdHRyaWJ1dGVOYW1lcy5IT05PX1RZUEVdO1xuICBpZiAoYXR0cmlidXRlc1tjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdIHx8ICF0eXBlKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgc3Bhbi5zZXRBdHRyaWJ1dGVzKHtcbiAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTl06ICdhdXRvLmh0dHAub3RlbC5ob25vJyxcbiAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QXTogYCR7dHlwZX0uaG9ub2AsXG4gIH0pO1xuXG4gIGNvbnN0IG5hbWUgPSBhdHRyaWJ1dGVzW2NvbnN0YW50cy5BdHRyaWJ1dGVOYW1lcy5IT05PX05BTUVdO1xuICBpZiAodHlwZW9mIG5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgc3Bhbi51cGRhdGVOYW1lKG5hbWUpO1xuICB9XG5cbiAgaWYgKGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKSA9PT0gY29yZS5nZXREZWZhdWx0SXNvbGF0aW9uU2NvcGUoKSkge1xuICAgIGRlYnVnQnVpbGQuREVCVUdfQlVJTEQgJiYgY29yZS5kZWJ1Zy53YXJuKCdJc29sYXRpb24gc2NvcGUgaXMgZGVmYXVsdCBpc29sYXRpb24gc2NvcGUgLSBza2lwcGluZyBzZXR0aW5nIHRyYW5zYWN0aW9uTmFtZScpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHJvdXRlID0gYXR0cmlidXRlc1tzZW1hbnRpY0NvbnZlbnRpb25zLkFUVFJfSFRUUF9ST1VURV07XG4gIGNvbnN0IG1ldGhvZCA9IGF0dHJpYnV0ZXNbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0hUVFBfUkVRVUVTVF9NRVRIT0RdO1xuICBpZiAodHlwZW9mIHJvdXRlID09PSAnc3RyaW5nJyAmJiB0eXBlb2YgbWV0aG9kID09PSAnc3RyaW5nJykge1xuICAgIGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke3JvdXRlfWApO1xuICB9XG59XG5cbmNvbnN0IGluc3RydW1lbnRIb25vID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgKCkgPT5cbiAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkhvbm9JbnN0cnVtZW50YXRpb24oe1xuICAgICAgcmVzcG9uc2VIb29rOiBzcGFuID0+IHtcbiAgICAgICAgYWRkSG9ub1NwYW5BdHRyaWJ1dGVzKHNwYW4pO1xuICAgICAgfSxcbiAgICB9KSxcbik7XG5cbmNvbnN0IF9ob25vSW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudEhvbm8oKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciBbSG9ub10oaHR0cHM6Ly9ob25vLmRldi8pLlxuICpcbiAqIElmIHlvdSBhbHNvIHdhbnQgdG8gY2FwdHVyZSBlcnJvcnMsIHlvdSBuZWVkIHRvIGNhbGwgYHNldHVwSG9ub0Vycm9ySGFuZGxlcihhcHApYCBhZnRlciB5b3Ugc2V0IHVwIHlvdXIgSG9ubyBzZXJ2ZXIuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2hvbm8gZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvaG9uby8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5ob25vSW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGhvbm9JbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2hvbm9JbnRlZ3JhdGlvbik7XG5cbmZ1bmN0aW9uIGhvbm9SZXF1ZXN0SGFuZGxlcigpIHtcbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIHNlbnRyeVJlcXVlc3RNaWRkbGV3YXJlKGNvbnRleHQsIG5leHQpIHtcbiAgICBjb25zdCBub3JtYWxpemVkUmVxdWVzdCA9IGNvcmUuaHR0cFJlcXVlc3RUb1JlcXVlc3REYXRhKGNvbnRleHQucmVxKTtcbiAgICBjb3JlLmdldElzb2xhdGlvblNjb3BlKCkuc2V0U0RLUHJvY2Vzc2luZ01ldGFkYXRhKHsgbm9ybWFsaXplZFJlcXVlc3QgfSk7XG4gICAgYXdhaXQgbmV4dCgpO1xuICB9O1xufVxuXG5mdW5jdGlvbiBkZWZhdWx0U2hvdWxkSGFuZGxlRXJyb3IoY29udGV4dCkge1xuICBjb25zdCBzdGF0dXNDb2RlID0gY29udGV4dC5yZXMuc3RhdHVzO1xuICByZXR1cm4gc3RhdHVzQ29kZSA+PSA1MDA7XG59XG5cbmZ1bmN0aW9uIGhvbm9FcnJvckhhbmRsZXIob3B0aW9ucykge1xuICByZXR1cm4gYXN5bmMgZnVuY3Rpb24gc2VudHJ5RXJyb3JNaWRkbGV3YXJlKGNvbnRleHQsIG5leHQpIHtcbiAgICBhd2FpdCBuZXh0KCk7XG5cbiAgICBjb25zdCBzaG91bGRIYW5kbGVFcnJvciA9IG9wdGlvbnM/LnNob3VsZEhhbmRsZUVycm9yIHx8IGRlZmF1bHRTaG91bGRIYW5kbGVFcnJvcjtcbiAgICBpZiAoc2hvdWxkSGFuZGxlRXJyb3IoY29udGV4dCkpIHtcbiAgICAgIChjb250ZXh0LnJlcyApLnNlbnRyeSA9IGNvcmUuY2FwdHVyZUV4Y2VwdGlvbihjb250ZXh0LmVycm9yLCB7XG4gICAgICAgIG1lY2hhbmlzbToge1xuICAgICAgICAgIHR5cGU6ICdhdXRvLm1pZGRsZXdhcmUuaG9ubycsXG4gICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG5cbi8qKlxuICogQWRkIGEgSG9ubyBlcnJvciBoYW5kbGVyIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gYXBwIFRoZSBIb25vIGluc3RhbmNlc1xuICogQHBhcmFtIG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgaGFuZGxlclxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqIGNvbnN0IHsgSG9ubyB9ID0gcmVxdWlyZShcImhvbm9cIik7XG4gKlxuICogY29uc3QgYXBwID0gbmV3IEhvbm8oKTtcbiAqXG4gKiBTZW50cnkuc2V0dXBIb25vRXJyb3JIYW5kbGVyKGFwcCk7XG4gKlxuICogLy8gQWRkIHlvdXIgcm91dGVzLCBldGMuXG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gc2V0dXBIb25vRXJyb3JIYW5kbGVyKFxuICBhcHAsXG4gIG9wdGlvbnMsXG4pIHtcbiAgYXBwLnVzZShob25vUmVxdWVzdEhhbmRsZXIoKSk7XG4gIGFwcC51c2UoaG9ub0Vycm9ySGFuZGxlcihvcHRpb25zKSk7XG4gIG5vZGVDb3JlLmVuc3VyZUlzV3JhcHBlZChhcHAudXNlLCAnaG9ubycpO1xufVxuXG5leHBvcnRzLmhvbm9JbnRlZ3JhdGlvbiA9IGhvbm9JbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEhvbm8gPSBpbnN0cnVtZW50SG9ubztcbmV4cG9ydHMuc2V0dXBIb25vRXJyb3JIYW5kbGVyID0gc2V0dXBIb25vRXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js\");\n\nconst PACKAGE_NAME = '@sentry/instrumentation-hono';\nconst PACKAGE_VERSION = '0.0.1';\n\n/**\n * Hono instrumentation for OpenTelemetry\n */\nclass HonoInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super(PACKAGE_NAME, PACKAGE_VERSION, config);\n }\n\n /**\n * Initialize the instrumentation.\n */\n init() {\n return [\n new instrumentation.InstrumentationNodeModuleDefinition('hono', ['>=4.0.0 <5'], moduleExports => this._patch(moduleExports)),\n ];\n }\n\n /**\n * Patches the module exports to instrument Hono.\n */\n _patch(moduleExports) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n class WrappedHono extends moduleExports.Hono {\n constructor(...args) {\n super(...args);\n\n instrumentation._wrap(this, 'get', instrumentation._patchHandler());\n instrumentation._wrap(this, 'post', instrumentation._patchHandler());\n instrumentation._wrap(this, 'put', instrumentation._patchHandler());\n instrumentation._wrap(this, 'delete', instrumentation._patchHandler());\n instrumentation._wrap(this, 'options', instrumentation._patchHandler());\n instrumentation._wrap(this, 'patch', instrumentation._patchHandler());\n instrumentation._wrap(this, 'all', instrumentation._patchHandler());\n instrumentation._wrap(this, 'on', instrumentation._patchOnHandler());\n instrumentation._wrap(this, 'use', instrumentation._patchMiddlewareHandler());\n }\n }\n\n try {\n moduleExports.Hono = WrappedHono;\n } catch {\n // This is a workaround for environments where direct assignment is not allowed.\n return { ...moduleExports, Hono: WrappedHono };\n }\n\n return moduleExports;\n }\n\n /**\n * Patches the route handler to instrument it.\n */\n _patchHandler() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function (original) {\n return function wrappedHandler( ...args) {\n if (typeof args[0] === 'string') {\n const path = args[0];\n if (args.length === 1) {\n return original.apply(this, [path]);\n }\n\n const handlers = args.slice(1);\n return original.apply(this, [\n path,\n ...handlers.map(handler => instrumentation._wrapHandler(handler )),\n ]);\n }\n\n return original.apply(\n this,\n args.map(handler => instrumentation._wrapHandler(handler )),\n );\n };\n };\n }\n\n /**\n * Patches the 'on' handler to instrument it.\n */\n _patchOnHandler() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function (original) {\n return function wrappedHandler( ...args) {\n const handlers = args.slice(2);\n return original.apply(this, [\n ...args.slice(0, 2),\n ...handlers.map(handler => instrumentation._wrapHandler(handler )),\n ]);\n };\n };\n }\n\n /**\n * Patches the middleware handler to instrument it.\n */\n _patchMiddlewareHandler() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function (original) {\n return function wrappedHandler( ...args) {\n if (typeof args[0] === 'string') {\n const path = args[0];\n if (args.length === 1) {\n return original.apply(this, [path]);\n }\n\n const handlers = args.slice(1);\n return original.apply(this, [\n path,\n ...handlers.map(handler => instrumentation._wrapHandler(handler )),\n ]);\n }\n\n return original.apply(\n this,\n args.map(handler => instrumentation._wrapHandler(handler )),\n );\n };\n };\n }\n\n /**\n * Wraps a handler or middleware handler to apply instrumentation.\n */\n _wrapHandler(handler) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function ( c, next) {\n if (!instrumentation.isEnabled()) {\n return handler.apply(this, [c, next]);\n }\n\n const path = c.req.path;\n const span = instrumentation.tracer.startSpan(path);\n\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n return instrumentation._safeExecute(\n () => {\n const result = handler.apply(this, [c, next]);\n if (core.isThenable(result)) {\n return result.then(result => {\n const type = instrumentation._determineHandlerType(result);\n span.setAttributes({\n [constants.AttributeNames.HONO_TYPE]: type,\n [constants.AttributeNames.HONO_NAME]: type === constants.HonoTypes.REQUEST_HANDLER ? path : handler.name || 'anonymous',\n });\n instrumentation.getConfig().responseHook?.(span);\n return result;\n });\n } else {\n const type = instrumentation._determineHandlerType(result);\n span.setAttributes({\n [constants.AttributeNames.HONO_TYPE]: type,\n [constants.AttributeNames.HONO_NAME]: type === constants.HonoTypes.REQUEST_HANDLER ? path : handler.name || 'anonymous',\n });\n instrumentation.getConfig().responseHook?.(span);\n return result;\n }\n },\n () => span.end(),\n error => {\n instrumentation._handleError(span, error);\n span.end();\n },\n );\n });\n };\n }\n\n /**\n * Safely executes a function and handles errors.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _safeExecute(execute, onSuccess, onFailure) {\n try {\n const result = execute();\n\n if (core.isThenable(result)) {\n result.then(\n () => onSuccess(),\n (error) => onFailure(error),\n );\n } else {\n onSuccess();\n }\n\n return result;\n } catch (error) {\n onFailure(error);\n throw error;\n }\n }\n\n /**\n * Determines the handler type based on the result.\n * @param result\n * @private\n */\n _determineHandlerType(result) {\n return result === undefined ? constants.HonoTypes.MIDDLEWARE : constants.HonoTypes.REQUEST_HANDLER;\n }\n\n /**\n * Handles errors by setting the span status and recording the exception.\n */\n _handleError(span, error) {\n if (error instanceof Error) {\n span.setStatus({\n code: api.SpanStatusCode.ERROR,\n message: error.message,\n });\n span.recordException(error);\n }\n }\n}\n\nexports.HonoInstrumentation = HonoInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbnN0cnVtZW50YXRpb24uanMiLCJtYXBwaW5ncyI6IkFBQUEsQ0FBQyxvREFBb0QseUNBQXlDLDBDQUEwQyw4Q0FBOEMsb0RBQW9ELG1EQUFtRCxxREFBcUQsaUJBQWlCOztBQUVuVyxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsa0JBQWtCLG1CQUFPLENBQUMsa0pBQWdCOztBQUUxQztBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBLGVBQWU7QUFDZjs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBLGVBQWU7QUFDZixjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSwyQkFBMkI7QUFDM0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbnN0cnVtZW50YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZXNUdW5uZWxQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJTRU5UUllfUkVMRUFTRVwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeUJhc2VQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5TmV4dEpzVmVyc2lvblwiXSA9IFwiMTYuMS42XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlRnJhbWVzRGlzdERpclwiXSA9IFwiLm5leHRcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVZlcmNlbENyb25zQ29uZmlnXCJdID0gdW5kZWZpbmVkO09iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBhcGkgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9hcGknKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3QgY29uc3RhbnRzID0gcmVxdWlyZSgnLi9jb25zdGFudHMuanMnKTtcblxuY29uc3QgUEFDS0FHRV9OQU1FID0gJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWhvbm8nO1xuY29uc3QgUEFDS0FHRV9WRVJTSU9OID0gJzAuMC4xJztcblxuLyoqXG4gKiBIb25vIGluc3RydW1lbnRhdGlvbiBmb3IgT3BlblRlbGVtZXRyeVxuICovXG5jbGFzcyBIb25vSW5zdHJ1bWVudGF0aW9uIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0ge30pIHtcbiAgICBzdXBlcihQQUNLQUdFX05BTUUsIFBBQ0tBR0VfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSBpbnN0cnVtZW50YXRpb24uXG4gICAqL1xuICAgaW5pdCgpIHtcbiAgICByZXR1cm4gW1xuICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRGVmaW5pdGlvbignaG9ubycsIFsnPj00LjAuMCA8NSddLCBtb2R1bGVFeHBvcnRzID0+IHRoaXMuX3BhdGNoKG1vZHVsZUV4cG9ydHMpKSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgdGhlIG1vZHVsZSBleHBvcnRzIHRvIGluc3RydW1lbnQgSG9uby5cbiAgICovXG4gICBfcGF0Y2gobW9kdWxlRXhwb3J0cykge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICBjbGFzcyBXcmFwcGVkSG9ubyBleHRlbmRzIG1vZHVsZUV4cG9ydHMuSG9ubyB7XG4gICAgICAgY29uc3RydWN0b3IoLi4uYXJncykge1xuICAgICAgICBzdXBlciguLi5hcmdzKTtcblxuICAgICAgICBpbnN0cnVtZW50YXRpb24uX3dyYXAodGhpcywgJ2dldCcsIGluc3RydW1lbnRhdGlvbi5fcGF0Y2hIYW5kbGVyKCkpO1xuICAgICAgICBpbnN0cnVtZW50YXRpb24uX3dyYXAodGhpcywgJ3Bvc3QnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdwdXQnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdkZWxldGUnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdvcHRpb25zJywgaW5zdHJ1bWVudGF0aW9uLl9wYXRjaEhhbmRsZXIoKSk7XG4gICAgICAgIGluc3RydW1lbnRhdGlvbi5fd3JhcCh0aGlzLCAncGF0Y2gnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdhbGwnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdvbicsIGluc3RydW1lbnRhdGlvbi5fcGF0Y2hPbkhhbmRsZXIoKSk7XG4gICAgICAgIGluc3RydW1lbnRhdGlvbi5fd3JhcCh0aGlzLCAndXNlJywgaW5zdHJ1bWVudGF0aW9uLl9wYXRjaE1pZGRsZXdhcmVIYW5kbGVyKCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBtb2R1bGVFeHBvcnRzLkhvbm8gPSBXcmFwcGVkSG9ubztcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIFRoaXMgaXMgYSB3b3JrYXJvdW5kIGZvciBlbnZpcm9ubWVudHMgd2hlcmUgZGlyZWN0IGFzc2lnbm1lbnQgaXMgbm90IGFsbG93ZWQuXG4gICAgICByZXR1cm4geyAuLi5tb2R1bGVFeHBvcnRzLCBIb25vOiBXcmFwcGVkSG9ubyB9O1xuICAgIH1cblxuICAgIHJldHVybiBtb2R1bGVFeHBvcnRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgdGhlIHJvdXRlIGhhbmRsZXIgdG8gaW5zdHJ1bWVudCBpdC5cbiAgICovXG4gICBfcGF0Y2hIYW5kbGVyKCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gd3JhcHBlZEhhbmRsZXIoIC4uLmFyZ3MpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIGNvbnN0IHBhdGggPSBhcmdzWzBdO1xuICAgICAgICAgIGlmIChhcmdzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KHRoaXMsIFtwYXRoXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgaGFuZGxlcnMgPSBhcmdzLnNsaWNlKDEpO1xuICAgICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseSh0aGlzLCBbXG4gICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgLi4uaGFuZGxlcnMubWFwKGhhbmRsZXIgPT4gaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihoYW5kbGVyICkpLFxuICAgICAgICAgIF0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICAgYXJncy5tYXAoaGFuZGxlciA9PiBpbnN0cnVtZW50YXRpb24uX3dyYXBIYW5kbGVyKGhhbmRsZXIgKSksXG4gICAgICAgICk7XG4gICAgICB9O1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUGF0Y2hlcyB0aGUgJ29uJyBoYW5kbGVyIHRvIGluc3RydW1lbnQgaXQuXG4gICAqL1xuICAgX3BhdGNoT25IYW5kbGVyKCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gd3JhcHBlZEhhbmRsZXIoIC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgaGFuZGxlcnMgPSBhcmdzLnNsaWNlKDIpO1xuICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgW1xuICAgICAgICAgIC4uLmFyZ3Muc2xpY2UoMCwgMiksXG4gICAgICAgICAgLi4uaGFuZGxlcnMubWFwKGhhbmRsZXIgPT4gaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihoYW5kbGVyICkpLFxuICAgICAgICBdKTtcbiAgICAgIH07XG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXRjaGVzIHRoZSBtaWRkbGV3YXJlIGhhbmRsZXIgdG8gaW5zdHJ1bWVudCBpdC5cbiAgICovXG4gICBfcGF0Y2hNaWRkbGV3YXJlSGFuZGxlcigpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXRoaXMtYWxpYXNcbiAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSB0aGlzO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIChvcmlnaW5hbCkge1xuICAgICAgcmV0dXJuIGZ1bmN0aW9uIHdyYXBwZWRIYW5kbGVyKCAuLi5hcmdzKSB7XG4gICAgICAgIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICBjb25zdCBwYXRoID0gYXJnc1swXTtcbiAgICAgICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseSh0aGlzLCBbcGF0aF0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGhhbmRsZXJzID0gYXJncy5zbGljZSgxKTtcbiAgICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgW1xuICAgICAgICAgICAgcGF0aCxcbiAgICAgICAgICAgIC4uLmhhbmRsZXJzLm1hcChoYW5kbGVyID0+IGluc3RydW1lbnRhdGlvbi5fd3JhcEhhbmRsZXIoaGFuZGxlciApKSxcbiAgICAgICAgICBdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseShcbiAgICAgICAgICB0aGlzLFxuICAgICAgICAgIGFyZ3MubWFwKGhhbmRsZXIgPT4gaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihoYW5kbGVyICkpLFxuICAgICAgICApO1xuICAgICAgfTtcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFdyYXBzIGEgaGFuZGxlciBvciBtaWRkbGV3YXJlIGhhbmRsZXIgdG8gYXBwbHkgaW5zdHJ1bWVudGF0aW9uLlxuICAgKi9cbiAgIF93cmFwSGFuZGxlcihoYW5kbGVyKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzXG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gdGhpcztcblxuICAgIHJldHVybiBmdW5jdGlvbiAoIGMsIG5leHQpIHtcbiAgICAgIGlmICghaW5zdHJ1bWVudGF0aW9uLmlzRW5hYmxlZCgpKSB7XG4gICAgICAgIHJldHVybiBoYW5kbGVyLmFwcGx5KHRoaXMsIFtjLCBuZXh0XSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBhdGggPSBjLnJlcS5wYXRoO1xuICAgICAgY29uc3Qgc3BhbiA9IGluc3RydW1lbnRhdGlvbi50cmFjZXIuc3RhcnRTcGFuKHBhdGgpO1xuXG4gICAgICByZXR1cm4gYXBpLmNvbnRleHQud2l0aChhcGkudHJhY2Uuc2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSwgc3BhbiksICgpID0+IHtcbiAgICAgICAgcmV0dXJuIGluc3RydW1lbnRhdGlvbi5fc2FmZUV4ZWN1dGUoXG4gICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gaGFuZGxlci5hcHBseSh0aGlzLCBbYywgbmV4dF0pO1xuICAgICAgICAgICAgaWYgKGNvcmUuaXNUaGVuYWJsZShyZXN1bHQpKSB7XG4gICAgICAgICAgICAgIHJldHVybiByZXN1bHQudGhlbihyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSBpbnN0cnVtZW50YXRpb24uX2RldGVybWluZUhhbmRsZXJUeXBlKHJlc3VsdCk7XG4gICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICAgIFtjb25zdGFudHMuQXR0cmlidXRlTmFtZXMuSE9OT19UWVBFXTogdHlwZSxcbiAgICAgICAgICAgICAgICAgIFtjb25zdGFudHMuQXR0cmlidXRlTmFtZXMuSE9OT19OQU1FXTogdHlwZSA9PT0gY29uc3RhbnRzLkhvbm9UeXBlcy5SRVFVRVNUX0hBTkRMRVIgPyBwYXRoIDogaGFuZGxlci5uYW1lIHx8ICdhbm9ueW1vdXMnLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RydW1lbnRhdGlvbi5nZXRDb25maWcoKS5yZXNwb25zZUhvb2s/LihzcGFuKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSBpbnN0cnVtZW50YXRpb24uX2RldGVybWluZUhhbmRsZXJUeXBlKHJlc3VsdCk7XG4gICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgICAgICAgICAgICAgW2NvbnN0YW50cy5BdHRyaWJ1dGVOYW1lcy5IT05PX1RZUEVdOiB0eXBlLFxuICAgICAgICAgICAgICAgIFtjb25zdGFudHMuQXR0cmlidXRlTmFtZXMuSE9OT19OQU1FXTogdHlwZSA9PT0gY29uc3RhbnRzLkhvbm9UeXBlcy5SRVFVRVNUX0hBTkRMRVIgPyBwYXRoIDogaGFuZGxlci5uYW1lIHx8ICdhbm9ueW1vdXMnLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgaW5zdHJ1bWVudGF0aW9uLmdldENvbmZpZygpLnJlc3BvbnNlSG9vaz8uKHNwYW4pO1xuICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgKCkgPT4gc3Bhbi5lbmQoKSxcbiAgICAgICAgICBlcnJvciA9PiB7XG4gICAgICAgICAgICBpbnN0cnVtZW50YXRpb24uX2hhbmRsZUVycm9yKHNwYW4sIGVycm9yKTtcbiAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogU2FmZWx5IGV4ZWN1dGVzIGEgZnVuY3Rpb24gYW5kIGhhbmRsZXMgZXJyb3JzLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgIF9zYWZlRXhlY3V0ZShleGVjdXRlLCBvblN1Y2Nlc3MsIG9uRmFpbHVyZSkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBleGVjdXRlKCk7XG5cbiAgICAgIGlmIChjb3JlLmlzVGhlbmFibGUocmVzdWx0KSkge1xuICAgICAgICByZXN1bHQudGhlbihcbiAgICAgICAgICAoKSA9PiBvblN1Y2Nlc3MoKSxcbiAgICAgICAgICAoZXJyb3IpID0+IG9uRmFpbHVyZShlcnJvciksXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvblN1Y2Nlc3MoKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgb25GYWlsdXJlKGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHRoZSBoYW5kbGVyIHR5cGUgYmFzZWQgb24gdGhlIHJlc3VsdC5cbiAgICogQHBhcmFtIHJlc3VsdFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgIF9kZXRlcm1pbmVIYW5kbGVyVHlwZShyZXN1bHQpIHtcbiAgICByZXR1cm4gcmVzdWx0ID09PSB1bmRlZmluZWQgPyBjb25zdGFudHMuSG9ub1R5cGVzLk1JRERMRVdBUkUgOiBjb25zdGFudHMuSG9ub1R5cGVzLlJFUVVFU1RfSEFORExFUjtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGVycm9ycyBieSBzZXR0aW5nIHRoZSBzcGFuIHN0YXR1cyBhbmQgcmVjb3JkaW5nIHRoZSBleGNlcHRpb24uXG4gICAqL1xuICAgX2hhbmRsZUVycm9yKHNwYW4sIGVycm9yKSB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHNwYW4uc2V0U3RhdHVzKHtcbiAgICAgICAgY29kZTogYXBpLlNwYW5TdGF0dXNDb2RlLkVSUk9SLFxuICAgICAgICBtZXNzYWdlOiBlcnJvci5tZXNzYWdlLFxuICAgICAgfSk7XG4gICAgICBzcGFuLnJlY29yZEV4Y2VwdGlvbihlcnJvcik7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydHMuSG9ub0luc3RydW1lbnRhdGlvbiA9IEhvbm9JbnN0cnVtZW50YXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst http = __webpack_require__(/*! ../http.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\");\nconst amqplib = __webpack_require__(/*! ./amqplib.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js\");\nconst index$6 = __webpack_require__(/*! ./anthropic-ai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js\");\nconst connect = __webpack_require__(/*! ./connect.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js\");\nconst express = __webpack_require__(/*! ./express.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js\");\nconst index = __webpack_require__(/*! ./fastify/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js\");\nconst firebase = __webpack_require__(/*! ./firebase/firebase.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js\");\nconst genericPool = __webpack_require__(/*! ./genericPool.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js\");\nconst index$7 = __webpack_require__(/*! ./google-genai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js\");\nconst graphql = __webpack_require__(/*! ./graphql.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js\");\nconst index$1 = __webpack_require__(/*! ./hapi/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js\");\nconst index$2 = __webpack_require__(/*! ./hono/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js\");\nconst kafka = __webpack_require__(/*! ./kafka.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js\");\nconst koa = __webpack_require__(/*! ./koa.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js\");\nconst index$3 = __webpack_require__(/*! ./langchain/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js\");\nconst index$8 = __webpack_require__(/*! ./langgraph/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js\");\nconst lrumemoizer = __webpack_require__(/*! ./lrumemoizer.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js\");\nconst mongo = __webpack_require__(/*! ./mongo.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js\");\nconst mongoose = __webpack_require__(/*! ./mongoose.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js\");\nconst mysql = __webpack_require__(/*! ./mysql.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js\");\nconst mysql2 = __webpack_require__(/*! ./mysql2.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js\");\nconst index$5 = __webpack_require__(/*! ./openai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js\");\nconst postgres = __webpack_require__(/*! ./postgres.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js\");\nconst postgresjs = __webpack_require__(/*! ./postgresjs.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js\");\nconst prisma = __webpack_require__(/*! ./prisma.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js\");\nconst redis = __webpack_require__(/*! ./redis.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js\");\nconst tedious = __webpack_require__(/*! ./tedious.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js\");\nconst index$4 = __webpack_require__(/*! ./vercelai/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js\");\n\n/**\n * With OTEL, all performance integrations will be added, as OTEL only initializes them when the patched package is actually required.\n */\nfunction getAutoPerformanceIntegrations() {\n return [\n express.expressIntegration(),\n index.fastifyIntegration(),\n graphql.graphqlIntegration(),\n index$2.honoIntegration(),\n mongo.mongoIntegration(),\n mongoose.mongooseIntegration(),\n mysql.mysqlIntegration(),\n mysql2.mysql2Integration(),\n redis.redisIntegration(),\n postgres.postgresIntegration(),\n prisma.prismaIntegration(),\n index$1.hapiIntegration(),\n koa.koaIntegration(),\n connect.connectIntegration(),\n tedious.tediousIntegration(),\n genericPool.genericPoolIntegration(),\n kafka.kafkaIntegration(),\n amqplib.amqplibIntegration(),\n lrumemoizer.lruMemoizerIntegration(),\n // AI providers\n // LangChain must come first to disable AI provider integrations before they instrument\n index$3.langChainIntegration(),\n index$8.langGraphIntegration(),\n index$4.vercelAIIntegration(),\n index$5.openAIIntegration(),\n index$6.anthropicAIIntegration(),\n index$7.googleGenAIIntegration(),\n postgresjs.postgresJsIntegration(),\n firebase.firebaseIntegration(),\n ];\n}\n\n/**\n * Get a list of methods to instrument OTEL, when preload instrumentation.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction getOpenTelemetryInstrumentationToPreload() {\n return [\n http.instrumentSentryHttp,\n http.instrumentOtelHttp,\n express.instrumentExpress,\n connect.instrumentConnect,\n index.instrumentFastify,\n index.instrumentFastifyV3,\n index$1.instrumentHapi,\n index$2.instrumentHono,\n kafka.instrumentKafka,\n koa.instrumentKoa,\n lrumemoizer.instrumentLruMemoizer,\n mongo.instrumentMongo,\n mongoose.instrumentMongoose,\n mysql.instrumentMysql,\n mysql2.instrumentMysql2,\n postgres.instrumentPostgres,\n index$1.instrumentHapi,\n graphql.instrumentGraphql,\n redis.instrumentRedis,\n tedious.instrumentTedious,\n genericPool.instrumentGenericPool,\n amqplib.instrumentAmqplib,\n index$3.instrumentLangChain,\n index$4.instrumentVercelAi,\n index$5.instrumentOpenAi,\n postgresjs.instrumentPostgresJs,\n firebase.instrumentFirebase,\n index$6.instrumentAnthropicAi,\n index$7.instrumentGoogleGenAI,\n index$8.instrumentLangGraph,\n ];\n}\n\nexports.getAutoPerformanceIntegrations = getAutoPerformanceIntegrations;\nexports.getOpenTelemetryInstrumentationToPreload = getOpenTelemetryInstrumentationToPreload;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaW5kZXguanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLDRIQUFZO0FBQ2pDLGdCQUFnQixtQkFBTyxDQUFDLHlJQUFjO0FBQ3RDLGdCQUFnQixtQkFBTyxDQUFDLCtKQUF5QjtBQUNqRCxnQkFBZ0IsbUJBQU8sQ0FBQyx5SUFBYztBQUN0QyxnQkFBZ0IsbUJBQU8sQ0FBQyx5SUFBYztBQUN0QyxjQUFjLG1CQUFPLENBQUMscUpBQW9CO0FBQzFDLGlCQUFpQixtQkFBTyxDQUFDLDZKQUF3QjtBQUNqRCxvQkFBb0IsbUJBQU8sQ0FBQyxpSkFBa0I7QUFDOUMsZ0JBQWdCLG1CQUFPLENBQUMsK0pBQXlCO0FBQ2pELGdCQUFnQixtQkFBTyxDQUFDLHlJQUFjO0FBQ3RDLGdCQUFnQixtQkFBTyxDQUFDLCtJQUFpQjtBQUN6QyxnQkFBZ0IsbUJBQU8sQ0FBQywrSUFBaUI7QUFDekMsY0FBYyxtQkFBTyxDQUFDLHFJQUFZO0FBQ2xDLFlBQVksbUJBQU8sQ0FBQyxpSUFBVTtBQUM5QixnQkFBZ0IsbUJBQU8sQ0FBQyx5SkFBc0I7QUFDOUMsZ0JBQWdCLG1CQUFPLENBQUMseUpBQXNCO0FBQzlDLG9CQUFvQixtQkFBTyxDQUFDLGlKQUFrQjtBQUM5QyxjQUFjLG1CQUFPLENBQUMscUlBQVk7QUFDbEMsaUJBQWlCLG1CQUFPLENBQUMsMklBQWU7QUFDeEMsY0FBYyxtQkFBTyxDQUFDLHFJQUFZO0FBQ2xDLGVBQWUsbUJBQU8sQ0FBQyx1SUFBYTtBQUNwQyxnQkFBZ0IsbUJBQU8sQ0FBQyxtSkFBbUI7QUFDM0MsaUJBQWlCLG1CQUFPLENBQUMsMklBQWU7QUFDeEMsbUJBQW1CLG1CQUFPLENBQUMsK0lBQWlCO0FBQzVDLGVBQWUsbUJBQU8sQ0FBQyx1SUFBYTtBQUNwQyxjQUFjLG1CQUFPLENBQUMscUlBQVk7QUFDbEMsZ0JBQWdCLG1CQUFPLENBQUMseUlBQWM7QUFDdEMsZ0JBQWdCLG1CQUFPLENBQUMsdUpBQXFCOztBQUU3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxzQ0FBc0M7QUFDdEMsZ0RBQWdEO0FBQ2hEIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBodHRwID0gcmVxdWlyZSgnLi4vaHR0cC5qcycpO1xuY29uc3QgYW1xcGxpYiA9IHJlcXVpcmUoJy4vYW1xcGxpYi5qcycpO1xuY29uc3QgaW5kZXgkNiA9IHJlcXVpcmUoJy4vYW50aHJvcGljLWFpL2luZGV4LmpzJyk7XG5jb25zdCBjb25uZWN0ID0gcmVxdWlyZSgnLi9jb25uZWN0LmpzJyk7XG5jb25zdCBleHByZXNzID0gcmVxdWlyZSgnLi9leHByZXNzLmpzJyk7XG5jb25zdCBpbmRleCA9IHJlcXVpcmUoJy4vZmFzdGlmeS9pbmRleC5qcycpO1xuY29uc3QgZmlyZWJhc2UgPSByZXF1aXJlKCcuL2ZpcmViYXNlL2ZpcmViYXNlLmpzJyk7XG5jb25zdCBnZW5lcmljUG9vbCA9IHJlcXVpcmUoJy4vZ2VuZXJpY1Bvb2wuanMnKTtcbmNvbnN0IGluZGV4JDcgPSByZXF1aXJlKCcuL2dvb2dsZS1nZW5haS9pbmRleC5qcycpO1xuY29uc3QgZ3JhcGhxbCA9IHJlcXVpcmUoJy4vZ3JhcGhxbC5qcycpO1xuY29uc3QgaW5kZXgkMSA9IHJlcXVpcmUoJy4vaGFwaS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXgkMiA9IHJlcXVpcmUoJy4vaG9uby9pbmRleC5qcycpO1xuY29uc3Qga2Fma2EgPSByZXF1aXJlKCcuL2thZmthLmpzJyk7XG5jb25zdCBrb2EgPSByZXF1aXJlKCcuL2tvYS5qcycpO1xuY29uc3QgaW5kZXgkMyA9IHJlcXVpcmUoJy4vbGFuZ2NoYWluL2luZGV4LmpzJyk7XG5jb25zdCBpbmRleCQ4ID0gcmVxdWlyZSgnLi9sYW5nZ3JhcGgvaW5kZXguanMnKTtcbmNvbnN0IGxydW1lbW9pemVyID0gcmVxdWlyZSgnLi9scnVtZW1vaXplci5qcycpO1xuY29uc3QgbW9uZ28gPSByZXF1aXJlKCcuL21vbmdvLmpzJyk7XG5jb25zdCBtb25nb29zZSA9IHJlcXVpcmUoJy4vbW9uZ29vc2UuanMnKTtcbmNvbnN0IG15c3FsID0gcmVxdWlyZSgnLi9teXNxbC5qcycpO1xuY29uc3QgbXlzcWwyID0gcmVxdWlyZSgnLi9teXNxbDIuanMnKTtcbmNvbnN0IGluZGV4JDUgPSByZXF1aXJlKCcuL29wZW5haS9pbmRleC5qcycpO1xuY29uc3QgcG9zdGdyZXMgPSByZXF1aXJlKCcuL3Bvc3RncmVzLmpzJyk7XG5jb25zdCBwb3N0Z3Jlc2pzID0gcmVxdWlyZSgnLi9wb3N0Z3Jlc2pzLmpzJyk7XG5jb25zdCBwcmlzbWEgPSByZXF1aXJlKCcuL3ByaXNtYS5qcycpO1xuY29uc3QgcmVkaXMgPSByZXF1aXJlKCcuL3JlZGlzLmpzJyk7XG5jb25zdCB0ZWRpb3VzID0gcmVxdWlyZSgnLi90ZWRpb3VzLmpzJyk7XG5jb25zdCBpbmRleCQ0ID0gcmVxdWlyZSgnLi92ZXJjZWxhaS9pbmRleC5qcycpO1xuXG4vKipcbiAqIFdpdGggT1RFTCwgYWxsIHBlcmZvcm1hbmNlIGludGVncmF0aW9ucyB3aWxsIGJlIGFkZGVkLCBhcyBPVEVMIG9ubHkgaW5pdGlhbGl6ZXMgdGhlbSB3aGVuIHRoZSBwYXRjaGVkIHBhY2thZ2UgaXMgYWN0dWFsbHkgcmVxdWlyZWQuXG4gKi9cbmZ1bmN0aW9uIGdldEF1dG9QZXJmb3JtYW5jZUludGVncmF0aW9ucygpIHtcbiAgcmV0dXJuIFtcbiAgICBleHByZXNzLmV4cHJlc3NJbnRlZ3JhdGlvbigpLFxuICAgIGluZGV4LmZhc3RpZnlJbnRlZ3JhdGlvbigpLFxuICAgIGdyYXBocWwuZ3JhcGhxbEludGVncmF0aW9uKCksXG4gICAgaW5kZXgkMi5ob25vSW50ZWdyYXRpb24oKSxcbiAgICBtb25nby5tb25nb0ludGVncmF0aW9uKCksXG4gICAgbW9uZ29vc2UubW9uZ29vc2VJbnRlZ3JhdGlvbigpLFxuICAgIG15c3FsLm15c3FsSW50ZWdyYXRpb24oKSxcbiAgICBteXNxbDIubXlzcWwySW50ZWdyYXRpb24oKSxcbiAgICByZWRpcy5yZWRpc0ludGVncmF0aW9uKCksXG4gICAgcG9zdGdyZXMucG9zdGdyZXNJbnRlZ3JhdGlvbigpLFxuICAgIHByaXNtYS5wcmlzbWFJbnRlZ3JhdGlvbigpLFxuICAgIGluZGV4JDEuaGFwaUludGVncmF0aW9uKCksXG4gICAga29hLmtvYUludGVncmF0aW9uKCksXG4gICAgY29ubmVjdC5jb25uZWN0SW50ZWdyYXRpb24oKSxcbiAgICB0ZWRpb3VzLnRlZGlvdXNJbnRlZ3JhdGlvbigpLFxuICAgIGdlbmVyaWNQb29sLmdlbmVyaWNQb29sSW50ZWdyYXRpb24oKSxcbiAgICBrYWZrYS5rYWZrYUludGVncmF0aW9uKCksXG4gICAgYW1xcGxpYi5hbXFwbGliSW50ZWdyYXRpb24oKSxcbiAgICBscnVtZW1vaXplci5scnVNZW1vaXplckludGVncmF0aW9uKCksXG4gICAgLy8gQUkgcHJvdmlkZXJzXG4gICAgLy8gTGFuZ0NoYWluIG11c3QgY29tZSBmaXJzdCB0byBkaXNhYmxlIEFJIHByb3ZpZGVyIGludGVncmF0aW9ucyBiZWZvcmUgdGhleSBpbnN0cnVtZW50XG4gICAgaW5kZXgkMy5sYW5nQ2hhaW5JbnRlZ3JhdGlvbigpLFxuICAgIGluZGV4JDgubGFuZ0dyYXBoSW50ZWdyYXRpb24oKSxcbiAgICBpbmRleCQ0LnZlcmNlbEFJSW50ZWdyYXRpb24oKSxcbiAgICBpbmRleCQ1Lm9wZW5BSUludGVncmF0aW9uKCksXG4gICAgaW5kZXgkNi5hbnRocm9waWNBSUludGVncmF0aW9uKCksXG4gICAgaW5kZXgkNy5nb29nbGVHZW5BSUludGVncmF0aW9uKCksXG4gICAgcG9zdGdyZXNqcy5wb3N0Z3Jlc0pzSW50ZWdyYXRpb24oKSxcbiAgICBmaXJlYmFzZS5maXJlYmFzZUludGVncmF0aW9uKCksXG4gIF07XG59XG5cbi8qKlxuICogR2V0IGEgbGlzdCBvZiBtZXRob2RzIHRvIGluc3RydW1lbnQgT1RFTCwgd2hlbiBwcmVsb2FkIGluc3RydW1lbnRhdGlvbi5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmZ1bmN0aW9uIGdldE9wZW5UZWxlbWV0cnlJbnN0cnVtZW50YXRpb25Ub1ByZWxvYWQoKSB7XG4gIHJldHVybiBbXG4gICAgaHR0cC5pbnN0cnVtZW50U2VudHJ5SHR0cCxcbiAgICBodHRwLmluc3RydW1lbnRPdGVsSHR0cCxcbiAgICBleHByZXNzLmluc3RydW1lbnRFeHByZXNzLFxuICAgIGNvbm5lY3QuaW5zdHJ1bWVudENvbm5lY3QsXG4gICAgaW5kZXguaW5zdHJ1bWVudEZhc3RpZnksXG4gICAgaW5kZXguaW5zdHJ1bWVudEZhc3RpZnlWMyxcbiAgICBpbmRleCQxLmluc3RydW1lbnRIYXBpLFxuICAgIGluZGV4JDIuaW5zdHJ1bWVudEhvbm8sXG4gICAga2Fma2EuaW5zdHJ1bWVudEthZmthLFxuICAgIGtvYS5pbnN0cnVtZW50S29hLFxuICAgIGxydW1lbW9pemVyLmluc3RydW1lbnRMcnVNZW1vaXplcixcbiAgICBtb25nby5pbnN0cnVtZW50TW9uZ28sXG4gICAgbW9uZ29vc2UuaW5zdHJ1bWVudE1vbmdvb3NlLFxuICAgIG15c3FsLmluc3RydW1lbnRNeXNxbCxcbiAgICBteXNxbDIuaW5zdHJ1bWVudE15c3FsMixcbiAgICBwb3N0Z3Jlcy5pbnN0cnVtZW50UG9zdGdyZXMsXG4gICAgaW5kZXgkMS5pbnN0cnVtZW50SGFwaSxcbiAgICBncmFwaHFsLmluc3RydW1lbnRHcmFwaHFsLFxuICAgIHJlZGlzLmluc3RydW1lbnRSZWRpcyxcbiAgICB0ZWRpb3VzLmluc3RydW1lbnRUZWRpb3VzLFxuICAgIGdlbmVyaWNQb29sLmluc3RydW1lbnRHZW5lcmljUG9vbCxcbiAgICBhbXFwbGliLmluc3RydW1lbnRBbXFwbGliLFxuICAgIGluZGV4JDMuaW5zdHJ1bWVudExhbmdDaGFpbixcbiAgICBpbmRleCQ0Lmluc3RydW1lbnRWZXJjZWxBaSxcbiAgICBpbmRleCQ1Lmluc3RydW1lbnRPcGVuQWksXG4gICAgcG9zdGdyZXNqcy5pbnN0cnVtZW50UG9zdGdyZXNKcyxcbiAgICBmaXJlYmFzZS5pbnN0cnVtZW50RmlyZWJhc2UsXG4gICAgaW5kZXgkNi5pbnN0cnVtZW50QW50aHJvcGljQWksXG4gICAgaW5kZXgkNy5pbnN0cnVtZW50R29vZ2xlR2VuQUksXG4gICAgaW5kZXgkOC5pbnN0cnVtZW50TGFuZ0dyYXBoLFxuICBdO1xufVxuXG5leHBvcnRzLmdldEF1dG9QZXJmb3JtYW5jZUludGVncmF0aW9ucyA9IGdldEF1dG9QZXJmb3JtYW5jZUludGVncmF0aW9ucztcbmV4cG9ydHMuZ2V0T3BlblRlbGVtZXRyeUluc3RydW1lbnRhdGlvblRvUHJlbG9hZCA9IGdldE9wZW5UZWxlbWV0cnlJbnN0cnVtZW50YXRpb25Ub1ByZWxvYWQ7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationKafkajs = __webpack_require__(/*! @opentelemetry/instrumentation-kafkajs */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-kafkajs@0.23.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-kafkajs/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Kafka';\n\nconst instrumentKafka = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationKafkajs.KafkaJsInstrumentation({\n consumerHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.kafkajs.otel.consumer');\n },\n producerHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.kafkajs.otel.producer');\n },\n }),\n);\n\nconst _kafkaIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentKafka();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [kafkajs](https://www.npmjs.com/package/kafkajs) library.\n *\n * For more information, see the [`kafkaIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/kafka/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.kafkaIntegration()],\n * });\n */\nconst kafkaIntegration = core.defineIntegration(_kafkaIntegration);\n\nexports.instrumentKafka = instrumentKafka;\nexports.kafkaIntegration = kafkaIntegration;\n//# sourceMappingURL=kafka.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcva2Fma2EuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsK0JBQStCLG1CQUFPLENBQUMsd05BQXdDO0FBQy9FLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUEsdUJBQXVCO0FBQ3ZCLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9rYWZrYS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uS2Fma2FqcyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1rYWZrYWpzJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnS2Fma2EnO1xuXG5jb25zdCBpbnN0cnVtZW50S2Fma2EgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICAoKSA9PlxuICAgIG5ldyBpbnN0cnVtZW50YXRpb25LYWZrYWpzLkthZmthSnNJbnN0cnVtZW50YXRpb24oe1xuICAgICAgY29uc3VtZXJIb29rKHNwYW4pIHtcbiAgICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmthZmthanMub3RlbC5jb25zdW1lcicpO1xuICAgICAgfSxcbiAgICAgIHByb2R1Y2VySG9vayhzcGFuKSB7XG4gICAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5rYWZrYWpzLm90ZWwucHJvZHVjZXInKTtcbiAgICAgIH0sXG4gICAgfSksXG4pO1xuXG5jb25zdCBfa2Fma2FJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50S2Fma2EoKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2thZmthanNdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2thZmthanMpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BrYWZrYUludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL2thZmthLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkua2Fma2FJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICovXG5jb25zdCBrYWZrYUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfa2Fma2FJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudEthZmthID0gaW5zdHJ1bWVudEthZmthO1xuZXhwb3J0cy5rYWZrYUludGVncmF0aW9uID0ga2Fma2FJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWthZmthLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationKnex = __webpack_require__(/*! @opentelemetry/instrumentation-knex */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-knex@0.58.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-knex/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Knex';\n\nconst instrumentKnex = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () => new instrumentationKnex.KnexInstrumentation({ requireParentSpan: true }),\n);\n\nconst _knexIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentKnex();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n instrumentationWrappedCallback?.(() =>\n client.on('spanStart', span => {\n const { data } = core.spanToJSON(span);\n // knex.version is always set in the span data\n // https://github.com/open-telemetry/opentelemetry-js-contrib/blob/0309caeafc44ac9cb13a3345b790b01b76d0497d/plugins/node/opentelemetry-instrumentation-knex/src/instrumentation.ts#L138\n if ('knex.version' in data) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.knex');\n }\n }),\n );\n },\n };\n}) ;\n\n/**\n * Knex integration\n *\n * Capture tracing data for [Knex](https://knexjs.org/).\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.knexIntegration()],\n * });\n * ```\n */\nconst knexIntegration = core.defineIntegration(_knexIntegration);\n\nexports.instrumentKnex = instrumentKnex;\nexports.knexIntegration = knexIntegration;\n//# sourceMappingURL=knex.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcva25leC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSw0QkFBNEIsbUJBQU8sQ0FBQywrTUFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7QUFDQTtBQUNBLHNEQUFzRCx5QkFBeUI7QUFDL0U7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsT0FBTztBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQSxzQkFBc0I7QUFDdEIsdUJBQXVCO0FBQ3ZCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2tuZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbktuZXggPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24ta25leCcpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0tuZXgnO1xuXG5jb25zdCBpbnN0cnVtZW50S25leCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+IG5ldyBpbnN0cnVtZW50YXRpb25LbmV4LktuZXhJbnN0cnVtZW50YXRpb24oeyByZXF1aXJlUGFyZW50U3BhbjogdHJ1ZSB9KSxcbik7XG5cbmNvbnN0IF9rbmV4SW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICBsZXQgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSBpbnN0cnVtZW50S25leCgpO1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrID0gbm9kZUNvcmUuaW5zdHJ1bWVudFdoZW5XcmFwcGVkKGluc3RydW1lbnRhdGlvbik7XG4gICAgfSxcblxuICAgIHNldHVwKGNsaWVudCkge1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrPy4oKCkgPT5cbiAgICAgICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCBzcGFuID0+IHtcbiAgICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgICAgICAgICAvLyBrbmV4LnZlcnNpb24gaXMgYWx3YXlzIHNldCBpbiB0aGUgc3BhbiBkYXRhXG4gICAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL29wZW4tdGVsZW1ldHJ5L29wZW50ZWxlbWV0cnktanMtY29udHJpYi9ibG9iLzAzMDljYWVhZmM0NGFjOWNiMTNhMzM0NWI3OTBiMDFiNzZkMDQ5N2QvcGx1Z2lucy9ub2RlL29wZW50ZWxlbWV0cnktaW5zdHJ1bWVudGF0aW9uLWtuZXgvc3JjL2luc3RydW1lbnRhdGlvbi50cyNMMTM4XG4gICAgICAgICAgaWYgKCdrbmV4LnZlcnNpb24nIGluIGRhdGEpIHtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU4sICdhdXRvLmRiLm90ZWwua25leCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogS25leCBpbnRlZ3JhdGlvblxuICpcbiAqIENhcHR1cmUgdHJhY2luZyBkYXRhIGZvciBbS25leF0oaHR0cHM6Ly9rbmV4anMub3JnLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGltcG9ydCAqIGFzIFNlbnRyeSBmcm9tICdAc2VudHJ5L25vZGUnO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkua25leEludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3Qga25leEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfa25leEludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50S25leCA9IGluc3RydW1lbnRLbmV4O1xuZXhwb3J0cy5rbmV4SW50ZWdyYXRpb24gPSBrbmV4SW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1rbmV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js ***!
\*****************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationKoa = __webpack_require__(/*! @opentelemetry/instrumentation-koa */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-koa@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-koa/build/src/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../debug-build.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\nconst INTEGRATION_NAME = 'Koa';\n\nconst instrumentKoa = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationKoa.KoaInstrumentation,\n (options = {}) => {\n return {\n ignoreLayersType: options.ignoreLayersType ,\n requestHook(span, info) {\n nodeCore.addOriginToSpan(span, 'auto.http.otel.koa');\n\n const attributes = core.spanToJSON(span).data;\n\n // this is one of: middleware, router\n const type = attributes['koa.type'];\n if (type) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, `${type}.koa`);\n }\n\n // Also update the name\n const name = attributes['koa.name'];\n if (typeof name === 'string') {\n // Somehow, name is sometimes `''` for middleware spans\n // See: https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2220\n span.updateName(name || '< unknown >');\n }\n\n if (core.getIsolationScope() === core.getDefaultIsolationScope()) {\n debugBuild.DEBUG_BUILD && core.debug.warn('Isolation scope is default isolation scope - skipping setting transactionName');\n return;\n }\n const route = attributes[semanticConventions.ATTR_HTTP_ROUTE];\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n const method = info.context?.request?.method?.toUpperCase() || 'GET';\n if (route) {\n core.getIsolationScope().setTransactionName(`${method} ${route}`);\n }\n },\n } ;\n },\n);\n\nconst _koaIntegration = ((options = {}) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentKoa(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Koa](https://koajs.com/).\n *\n * If you also want to capture errors, you need to call `setupKoaErrorHandler(app)` after you set up your Koa server.\n *\n * For more information, see the [koa documentation](https://docs.sentry.io/platforms/javascript/guides/koa/).\n *\n * @param {KoaOptions} options Configuration options for the Koa integration.\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.koaIntegration()],\n * })\n * ```\n *\n * @example\n * ```javascript\n * // To ignore middleware spans\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [\n * Sentry.koaIntegration({\n * ignoreLayersType: ['middleware']\n * })\n * ],\n * })\n * ```\n */\nconst koaIntegration = core.defineIntegration(_koaIntegration);\n\n/**\n * Add an Koa error handler to capture errors to Sentry.\n *\n * The error handler must be before any other middleware and after all controllers.\n *\n * @param app The Express instances\n * @param options {ExpressHandlerOptions} Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const Koa = require(\"koa\");\n *\n * const app = new Koa();\n *\n * Sentry.setupKoaErrorHandler(app);\n *\n * // Add your routes, etc.\n *\n * app.listen(3000);\n * ```\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst setupKoaErrorHandler = (app) => {\n app.use(async (ctx, next) => {\n try {\n await next();\n } catch (error) {\n core.captureException(error, {\n mechanism: {\n handled: false,\n type: 'auto.middleware.koa',\n },\n });\n throw error;\n }\n });\n\n nodeCore.ensureIsWrapped(app.use, 'koa');\n};\n\nexports.instrumentKoa = instrumentKoa;\nexports.koaIntegration = koaIntegration;\nexports.setupKoaErrorHandler = setupKoaErrorHandler;\n//# sourceMappingURL=koa.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcva29hLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLDJCQUEyQixtQkFBTyxDQUFDLDRNQUFvQztBQUN2RSw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxnSUFBc0I7O0FBRWpEOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxrRUFBa0UsS0FBSztBQUN2RTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlELFFBQVEsRUFBRSxNQUFNO0FBQ3pFO0FBQ0EsT0FBTztBQUNQO0FBQ0EsR0FBRztBQUNIOztBQUVBLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLFlBQVk7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHVCQUF1QjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUDtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBOztBQUVBLHFCQUFxQjtBQUNyQixzQkFBc0I7QUFDdEIsNEJBQTRCO0FBQzVCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2tvYS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uS29hID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWtvYScpO1xuY29uc3Qgc2VtYW50aWNDb252ZW50aW9ucyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3NlbWFudGljLWNvbnZlbnRpb25zJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBkZWJ1Z0J1aWxkID0gcmVxdWlyZSgnLi4vLi4vZGVidWctYnVpbGQuanMnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdLb2EnO1xuXG5jb25zdCBpbnN0cnVtZW50S29hID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgaW5zdHJ1bWVudGF0aW9uS29hLktvYUluc3RydW1lbnRhdGlvbixcbiAgKG9wdGlvbnMgPSB7fSkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBpZ25vcmVMYXllcnNUeXBlOiBvcHRpb25zLmlnbm9yZUxheWVyc1R5cGUgLFxuICAgICAgcmVxdWVzdEhvb2soc3BhbiwgaW5mbykge1xuICAgICAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uaHR0cC5vdGVsLmtvYScpO1xuXG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBjb3JlLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcblxuICAgICAgICAvLyB0aGlzIGlzIG9uZSBvZjogbWlkZGxld2FyZSwgcm91dGVyXG4gICAgICAgIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydrb2EudHlwZSddO1xuICAgICAgICBpZiAodHlwZSkge1xuICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgYCR7dHlwZX0ua29hYCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBbHNvIHVwZGF0ZSB0aGUgbmFtZVxuICAgICAgICBjb25zdCBuYW1lID0gYXR0cmlidXRlc1sna29hLm5hbWUnXTtcbiAgICAgICAgaWYgKHR5cGVvZiBuYW1lID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIC8vIFNvbWVob3csIG5hbWUgaXMgc29tZXRpbWVzIGAnJ2AgZm9yIG1pZGRsZXdhcmUgc3BhbnNcbiAgICAgICAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvaXNzdWVzLzIyMjBcbiAgICAgICAgICBzcGFuLnVwZGF0ZU5hbWUobmFtZSB8fCAnPCB1bmtub3duID4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb3JlLmdldElzb2xhdGlvblNjb3BlKCkgPT09IGNvcmUuZ2V0RGVmYXVsdElzb2xhdGlvblNjb3BlKCkpIHtcbiAgICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcud2FybignSXNvbGF0aW9uIHNjb3BlIGlzIGRlZmF1bHQgaXNvbGF0aW9uIHNjb3BlIC0gc2tpcHBpbmcgc2V0dGluZyB0cmFuc2FjdGlvbk5hbWUnKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgcm91dGUgPSBhdHRyaWJ1dGVzW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9IVFRQX1JPVVRFXTtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtbWVtYmVyLWFjY2Vzc1xuICAgICAgICBjb25zdCBtZXRob2QgPSBpbmZvLmNvbnRleHQ/LnJlcXVlc3Q/Lm1ldGhvZD8udG9VcHBlckNhc2UoKSB8fCAnR0VUJztcbiAgICAgICAgaWYgKHJvdXRlKSB7XG4gICAgICAgICAgY29yZS5nZXRJc29sYXRpb25TY29wZSgpLnNldFRyYW5zYWN0aW9uTmFtZShgJHttZXRob2R9ICR7cm91dGV9YCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSA7XG4gIH0sXG4pO1xuXG5jb25zdCBfa29hSW50ZWdyYXRpb24gPSAoKG9wdGlvbnMgPSB7fSkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudEtvYShvcHRpb25zKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciBbS29hXShodHRwczovL2tvYWpzLmNvbS8pLlxuICpcbiAqIElmIHlvdSBhbHNvIHdhbnQgdG8gY2FwdHVyZSBlcnJvcnMsIHlvdSBuZWVkIHRvIGNhbGwgYHNldHVwS29hRXJyb3JIYW5kbGVyKGFwcClgIGFmdGVyIHlvdSBzZXQgdXAgeW91ciBLb2Egc2VydmVyLlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtrb2EgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMva29hLykuXG4gKlxuICogQHBhcmFtIHtLb2FPcHRpb25zfSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIEtvYSBpbnRlZ3JhdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkua29hSW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIC8vIFRvIGlnbm9yZSBtaWRkbGV3YXJlIHNwYW5zXG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5rb2FJbnRlZ3JhdGlvbih7XG4gKiAgICAgICBpZ25vcmVMYXllcnNUeXBlOiBbJ21pZGRsZXdhcmUnXVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGtvYUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfa29hSW50ZWdyYXRpb24pO1xuXG4vKipcbiAqIEFkZCBhbiBLb2EgZXJyb3IgaGFuZGxlciB0byBjYXB0dXJlIGVycm9ycyB0byBTZW50cnkuXG4gKlxuICogVGhlIGVycm9yIGhhbmRsZXIgbXVzdCBiZSBiZWZvcmUgYW55IG90aGVyIG1pZGRsZXdhcmUgYW5kIGFmdGVyIGFsbCBjb250cm9sbGVycy5cbiAqXG4gKiBAcGFyYW0gYXBwIFRoZSBFeHByZXNzIGluc3RhbmNlc1xuICogQHBhcmFtIG9wdGlvbnMge0V4cHJlc3NIYW5kbGVyT3B0aW9uc30gQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgaGFuZGxlclxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqIGNvbnN0IEtvYSA9IHJlcXVpcmUoXCJrb2FcIik7XG4gKlxuICogY29uc3QgYXBwID0gbmV3IEtvYSgpO1xuICpcbiAqIFNlbnRyeS5zZXR1cEtvYUVycm9ySGFuZGxlcihhcHApO1xuICpcbiAqIC8vIEFkZCB5b3VyIHJvdXRlcywgZXRjLlxuICpcbiAqIGFwcC5saXN0ZW4oMzAwMCk7XG4gKiBgYGBcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmNvbnN0IHNldHVwS29hRXJyb3JIYW5kbGVyID0gKGFwcCkgPT4ge1xuICBhcHAudXNlKGFzeW5jIChjdHgsIG5leHQpID0+IHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgbmV4dCgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb3JlLmNhcHR1cmVFeGNlcHRpb24oZXJyb3IsIHtcbiAgICAgICAgbWVjaGFuaXNtOiB7XG4gICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgICAgdHlwZTogJ2F1dG8ubWlkZGxld2FyZS5rb2EnLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH0pO1xuXG4gIG5vZGVDb3JlLmVuc3VyZUlzV3JhcHBlZChhcHAudXNlLCAna29hJyk7XG59O1xuXG5leHBvcnRzLmluc3RydW1lbnRLb2EgPSBpbnN0cnVtZW50S29hO1xuZXhwb3J0cy5rb2FJbnRlZ3JhdGlvbiA9IGtvYUludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cEtvYUVycm9ySGFuZGxlciA9IHNldHVwS29hRXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9a29hLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js ***!
\*****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js\");\n\nconst instrumentLangChain = nodeCore.generateInstrumentOnce(\n core.LANGCHAIN_INTEGRATION_NAME,\n options => new instrumentation.SentryLangChainInstrumentation(options),\n);\n\nconst _langChainIntegration = ((options = {}) => {\n return {\n name: core.LANGCHAIN_INTEGRATION_NAME,\n setupOnce() {\n instrumentLangChain(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for LangChain.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments LangChain runnable instances\n * to capture telemetry data by injecting Sentry callback handlers into all LangChain calls.\n *\n * **Important:** This integration automatically skips wrapping the OpenAI, Anthropic, and Google GenAI\n * providers to prevent duplicate spans when using LangChain with these AI providers.\n * LangChain handles the instrumentation for all underlying AI providers.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n * import { ChatOpenAI } from '@langchain/openai';\n *\n * Sentry.init({\n * integrations: [Sentry.langChainIntegration()],\n * sendDefaultPii: true, // Enable to record inputs/outputs\n * });\n *\n * // LangChain calls are automatically instrumented\n * const model = new ChatOpenAI();\n * await model.invoke(\"What is the capital of France?\");\n * ```\n *\n * ## Manual Callback Handler\n *\n * You can also manually add the Sentry callback handler alongside other callbacks:\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n * import { ChatOpenAI } from '@langchain/openai';\n *\n * const sentryHandler = Sentry.createLangChainCallbackHandler({\n * recordInputs: true,\n * recordOutputs: true\n * });\n *\n * const model = new ChatOpenAI();\n * await model.invoke(\n * \"What is the capital of France?\",\n * { callbacks: [sentryHandler, myOtherCallback] }\n * );\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record input messages/prompts (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.langChainIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.langChainIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n * ## Supported Events\n *\n * The integration captures the following LangChain lifecycle events:\n * - LLM/Chat Model: start, end, error\n * - Chain: start, end, error\n * - Tool: start, end, error\n *\n */\nconst langChainIntegration = core.defineIntegration(_langChainIntegration);\n\nexports.instrumentLangChain = instrumentLangChain;\nexports.langChainIntegration = langChainIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2NoYWluL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsbUtBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0Q0FBNEM7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsMkJBQTJCO0FBQzNCLDRCQUE0QjtBQUM1QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9sYW5nY2hhaW4vaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRMYW5nQ2hhaW4gPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBjb3JlLkxBTkdDSEFJTl9JTlRFR1JBVElPTl9OQU1FLFxuICBvcHRpb25zID0+IG5ldyBpbnN0cnVtZW50YXRpb24uU2VudHJ5TGFuZ0NoYWluSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX2xhbmdDaGFpbkludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLkxBTkdDSEFJTl9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRMYW5nQ2hhaW4ob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgTGFuZ0NoYWluLlxuICpcbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgZW5hYmxlZCBieSBkZWZhdWx0LlxuICpcbiAqIFdoZW4gY29uZmlndXJlZCwgdGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IGluc3RydW1lbnRzIExhbmdDaGFpbiBydW5uYWJsZSBpbnN0YW5jZXNcbiAqIHRvIGNhcHR1cmUgdGVsZW1ldHJ5IGRhdGEgYnkgaW5qZWN0aW5nIFNlbnRyeSBjYWxsYmFjayBoYW5kbGVycyBpbnRvIGFsbCBMYW5nQ2hhaW4gY2FsbHMuXG4gKlxuICogKipJbXBvcnRhbnQ6KiogVGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IHNraXBzIHdyYXBwaW5nIHRoZSBPcGVuQUksIEFudGhyb3BpYywgYW5kIEdvb2dsZSBHZW5BSVxuICogcHJvdmlkZXJzIHRvIHByZXZlbnQgZHVwbGljYXRlIHNwYW5zIHdoZW4gdXNpbmcgTGFuZ0NoYWluIHdpdGggdGhlc2UgQUkgcHJvdmlkZXJzLlxuICogTGFuZ0NoYWluIGhhbmRsZXMgdGhlIGluc3RydW1lbnRhdGlvbiBmb3IgYWxsIHVuZGVybHlpbmcgQUkgcHJvdmlkZXJzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBpbXBvcnQgKiBhcyBTZW50cnkgZnJvbSAnQHNlbnRyeS9ub2RlJztcbiAqIGltcG9ydCB7IENoYXRPcGVuQUkgfSBmcm9tICdAbGFuZ2NoYWluL29wZW5haSc7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkubGFuZ0NoYWluSW50ZWdyYXRpb24oKV0sXG4gKiAgIHNlbmREZWZhdWx0UGlpOiB0cnVlLCAvLyBFbmFibGUgdG8gcmVjb3JkIGlucHV0cy9vdXRwdXRzXG4gKiB9KTtcbiAqXG4gKiAvLyBMYW5nQ2hhaW4gY2FsbHMgYXJlIGF1dG9tYXRpY2FsbHkgaW5zdHJ1bWVudGVkXG4gKiBjb25zdCBtb2RlbCA9IG5ldyBDaGF0T3BlbkFJKCk7XG4gKiBhd2FpdCBtb2RlbC5pbnZva2UoXCJXaGF0IGlzIHRoZSBjYXBpdGFsIG9mIEZyYW5jZT9cIik7XG4gKiBgYGBcbiAqXG4gKiAjIyBNYW51YWwgQ2FsbGJhY2sgSGFuZGxlclxuICpcbiAqIFlvdSBjYW4gYWxzbyBtYW51YWxseSBhZGQgdGhlIFNlbnRyeSBjYWxsYmFjayBoYW5kbGVyIGFsb25nc2lkZSBvdGhlciBjYWxsYmFja3M6XG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGltcG9ydCAqIGFzIFNlbnRyeSBmcm9tICdAc2VudHJ5L25vZGUnO1xuICogaW1wb3J0IHsgQ2hhdE9wZW5BSSB9IGZyb20gJ0BsYW5nY2hhaW4vb3BlbmFpJztcbiAqXG4gKiBjb25zdCBzZW50cnlIYW5kbGVyID0gU2VudHJ5LmNyZWF0ZUxhbmdDaGFpbkNhbGxiYWNrSGFuZGxlcih7XG4gKiAgIHJlY29yZElucHV0czogdHJ1ZSxcbiAqICAgcmVjb3JkT3V0cHV0czogdHJ1ZVxuICogfSk7XG4gKlxuICogY29uc3QgbW9kZWwgPSBuZXcgQ2hhdE9wZW5BSSgpO1xuICogYXdhaXQgbW9kZWwuaW52b2tlKFxuICogICBcIldoYXQgaXMgdGhlIGNhcGl0YWwgb2YgRnJhbmNlP1wiLFxuICogICB7IGNhbGxiYWNrczogW3NlbnRyeUhhbmRsZXIsIG15T3RoZXJDYWxsYmFja10gfVxuICogKTtcbiAqIGBgYFxuICpcbiAqICMjIE9wdGlvbnNcbiAqXG4gKiAtIGByZWNvcmRJbnB1dHNgOiBXaGV0aGVyIHRvIHJlY29yZCBpbnB1dCBtZXNzYWdlcy9wcm9tcHRzIChkZWZhdWx0OiByZXNwZWN0cyBgc2VuZERlZmF1bHRQaWlgIGNsaWVudCBvcHRpb24pXG4gKiAtIGByZWNvcmRPdXRwdXRzYDogV2hldGhlciB0byByZWNvcmQgcmVzcG9uc2UgdGV4dCAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICpcbiAqICMjIyBEZWZhdWx0IEJlaGF2aW9yXG4gKlxuICogQnkgZGVmYXVsdCwgdGhlIGludGVncmF0aW9uIHdpbGw6XG4gKiAtIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgT05MWSBpZiBgc2VuZERlZmF1bHRQaWlgIGlzIHNldCB0byBgdHJ1ZWAgaW4geW91ciBTZW50cnkgY2xpZW50IG9wdGlvbnNcbiAqIC0gT3RoZXJ3aXNlLCBpbnB1dHMgYW5kIG91dHB1dHMgYXJlIE5PVCByZWNvcmRlZCB1bmxlc3MgZXhwbGljaXRseSBlbmFibGVkXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIC8vIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgd2hlbiBzZW5kRGVmYXVsdFBpaSBpcyBmYWxzZVxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkubGFuZ0NoYWluSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiB0cnVlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogdHJ1ZVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KTtcbiAqXG4gKiAvLyBOZXZlciByZWNvcmQgaW5wdXRzL291dHB1dHMgcmVnYXJkbGVzcyBvZiBzZW5kRGVmYXVsdFBpaVxuICogU2VudHJ5LmluaXQoe1xuICogICBzZW5kRGVmYXVsdFBpaTogdHJ1ZSxcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5LmxhbmdDaGFpbkludGVncmF0aW9uKHtcbiAqICAgICAgIHJlY29yZElucHV0czogZmFsc2UsXG4gKiAgICAgICByZWNvcmRPdXRwdXRzOiBmYWxzZVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqICMjIFN1cHBvcnRlZCBFdmVudHNcbiAqXG4gKiBUaGUgaW50ZWdyYXRpb24gY2FwdHVyZXMgdGhlIGZvbGxvd2luZyBMYW5nQ2hhaW4gbGlmZWN5Y2xlIGV2ZW50czpcbiAqIC0gTExNL0NoYXQgTW9kZWw6IHN0YXJ0LCBlbmQsIGVycm9yXG4gKiAtIENoYWluOiBzdGFydCwgZW5kLCBlcnJvclxuICogLSBUb29sOiBzdGFydCwgZW5kLCBlcnJvclxuICpcbiAqL1xuY29uc3QgbGFuZ0NoYWluSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9sYW5nQ2hhaW5JbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudExhbmdDaGFpbiA9IGluc3RydW1lbnRMYW5nQ2hhaW47XG5leHBvcnRzLmxhbmdDaGFpbkludGVncmF0aW9uID0gbGFuZ0NoYWluSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js":
/*!***************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js ***!
\***************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.1.0 <2.0.0'];\n\n/**\n * Augments a callback handler list with Sentry's handler if not already present\n */\nfunction augmentCallbackHandlers(handlers, sentryHandler) {\n // Handle null/undefined - return array with just our handler\n if (!handlers) {\n return [sentryHandler];\n }\n\n // If handlers is already an array\n if (Array.isArray(handlers)) {\n // Check if our handler is already in the list\n if (handlers.includes(sentryHandler)) {\n return handlers;\n }\n // Add our handler to the list\n return [...handlers, sentryHandler];\n }\n\n // If it's a single handler object, convert to array\n if (typeof handlers === 'object') {\n return [handlers, sentryHandler];\n }\n\n // Unknown type - return original\n return handlers;\n}\n\n/**\n * Wraps Runnable methods (invoke, stream, batch) to inject Sentry callbacks at request time\n * Uses a Proxy to intercept method calls and augment the options.callbacks\n */\nfunction wrapRunnableMethod(\n originalMethod,\n sentryHandler,\n _methodName,\n) {\n return new Proxy(originalMethod, {\n apply(target, thisArg, args) {\n // LangChain Runnable method signatures:\n // invoke(input, options?) - options contains callbacks\n // stream(input, options?) - options contains callbacks\n // batch(inputs, options?) - options contains callbacks\n\n // Options is typically the second argument\n const optionsIndex = 1;\n let options = args[optionsIndex] ;\n\n // If options don't exist or aren't an object, create them\n if (!options || typeof options !== 'object' || Array.isArray(options)) {\n options = {};\n args[optionsIndex] = options;\n }\n\n // Inject our callback handler into options.callbacks (request time callbacks)\n const existingCallbacks = options.callbacks;\n const augmentedCallbacks = augmentCallbackHandlers(existingCallbacks, sentryHandler);\n options.callbacks = augmentedCallbacks;\n\n // Call original method with augmented options\n return Reflect.apply(target, thisArg, args);\n },\n }) ;\n}\n\n/**\n * Sentry LangChain instrumentation using OpenTelemetry.\n */\nclass SentryLangChainInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-langchain', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n * We patch the BaseChatModel class methods to inject callbacks\n *\n * We hook into provider packages (@langchain/anthropic, @langchain/openai, etc.)\n * because @langchain/core is often bundled and not loaded as a separate module\n */\n init() {\n const modules = [];\n\n // Hook into common LangChain provider packages\n const providerPackages = [\n '@langchain/anthropic',\n '@langchain/openai',\n '@langchain/google-genai',\n '@langchain/mistralai',\n '@langchain/google-vertexai',\n '@langchain/groq',\n ];\n\n for (const packageName of providerPackages) {\n // In CJS, LangChain packages re-export from dist/index.cjs files.\n // Patching only the root module sometimes misses the real implementation or\n // gets overwritten when that file is loaded. We add a file-level patch so that\n // _patch runs again on the concrete implementation\n modules.push(\n new instrumentation.InstrumentationNodeModuleDefinition(\n packageName,\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n [\n new instrumentation.InstrumentationNodeModuleFile(\n `${packageName}/dist/index.cjs`,\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n ),\n ],\n ),\n );\n }\n\n // Hook into main 'langchain' package to catch initChatModel (v1+)\n modules.push(\n new instrumentation.InstrumentationNodeModuleDefinition(\n 'langchain',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n [\n // To catch the CJS build that contains ConfigurableModel / initChatModel for v1\n new instrumentation.InstrumentationNodeModuleFile(\n 'langchain/dist/chat_models/universal.cjs',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n ),\n ],\n ),\n );\n\n return modules;\n }\n\n /**\n * Core patch logic - patches chat model methods to inject Sentry callbacks\n * This is called when a LangChain provider package is loaded\n */\n _patch(exports$1) {\n // Skip AI provider wrapping now that LangChain is actually being used\n // This prevents duplicate spans from Anthropic/OpenAI/GoogleGenAI standalone integrations\n core._INTERNAL_skipAiProviderWrapping([\n core.OPENAI_INTEGRATION_NAME,\n core.ANTHROPIC_AI_INTEGRATION_NAME,\n core.GOOGLE_GENAI_INTEGRATION_NAME,\n ]);\n\n // Create a shared handler instance\n const sentryHandler = core.createLangChainCallbackHandler(this.getConfig());\n\n // Patch Runnable methods to inject callbacks at request time\n // This directly manipulates options.callbacks that LangChain uses\n this._patchRunnableMethods(exports$1, sentryHandler);\n\n return exports$1;\n }\n\n /**\n * Patches chat model methods (invoke, stream, batch) to inject Sentry callbacks\n * Finds a chat model class from the provider package exports and patches its prototype methods\n */\n _patchRunnableMethods(exports$1, sentryHandler) {\n // Known chat model class names for each provider\n const knownChatModelNames = [\n 'ChatAnthropic',\n 'ChatOpenAI',\n 'ChatGoogleGenerativeAI',\n 'ChatMistralAI',\n 'ChatVertexAI',\n 'ChatGroq',\n 'ConfigurableModel',\n ];\n\n const exportsToPatch = (exports$1.universal_exports ?? exports$1) ;\n\n const chatModelClass = Object.values(exportsToPatch).find(exp => {\n return typeof exp === 'function' && knownChatModelNames.includes(exp.name);\n }) ;\n\n if (!chatModelClass) {\n return;\n }\n\n // Patch directly on chatModelClass.prototype\n const targetProto = chatModelClass.prototype ;\n\n // Skip if already patched (both file-level and module-level hooks resolve to the same prototype)\n if (targetProto.__sentry_patched__) {\n return;\n }\n targetProto.__sentry_patched__ = true;\n\n // Patch the methods (invoke, stream, batch)\n // All chat model instances will inherit these patched methods\n const methodsToPatch = ['invoke', 'stream', 'batch'] ;\n\n for (const methodName of methodsToPatch) {\n const method = targetProto[methodName];\n if (typeof method === 'function') {\n targetProto[methodName] = wrapRunnableMethod(\n method ,\n sentryHandler);\n }\n }\n }\n}\n\nexports.SentryLangChainInstrumentation = SentryLangChainInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2NoYWluL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEI7QUFDMUI7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLFlBQVk7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0NBQXNDO0FBQ3RDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2xhbmdjaGFpbi9pbnN0cnVtZW50YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZXNUdW5uZWxQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJTRU5UUllfUkVMRUFTRVwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeUJhc2VQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5TmV4dEpzVmVyc2lvblwiXSA9IFwiMTYuMS42XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlRnJhbWVzRGlzdERpclwiXSA9IFwiLm5leHRcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVZlcmNlbENyb25zQ29uZmlnXCJdID0gdW5kZWZpbmVkO09iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcblxuY29uc3Qgc3VwcG9ydGVkVmVyc2lvbnMgPSBbJz49MC4xLjAgPDIuMC4wJ107XG5cbi8qKlxuICogQXVnbWVudHMgYSBjYWxsYmFjayBoYW5kbGVyIGxpc3Qgd2l0aCBTZW50cnkncyBoYW5kbGVyIGlmIG5vdCBhbHJlYWR5IHByZXNlbnRcbiAqL1xuZnVuY3Rpb24gYXVnbWVudENhbGxiYWNrSGFuZGxlcnMoaGFuZGxlcnMsIHNlbnRyeUhhbmRsZXIpIHtcbiAgLy8gSGFuZGxlIG51bGwvdW5kZWZpbmVkIC0gcmV0dXJuIGFycmF5IHdpdGgganVzdCBvdXIgaGFuZGxlclxuICBpZiAoIWhhbmRsZXJzKSB7XG4gICAgcmV0dXJuIFtzZW50cnlIYW5kbGVyXTtcbiAgfVxuXG4gIC8vIElmIGhhbmRsZXJzIGlzIGFscmVhZHkgYW4gYXJyYXlcbiAgaWYgKEFycmF5LmlzQXJyYXkoaGFuZGxlcnMpKSB7XG4gICAgLy8gQ2hlY2sgaWYgb3VyIGhhbmRsZXIgaXMgYWxyZWFkeSBpbiB0aGUgbGlzdFxuICAgIGlmIChoYW5kbGVycy5pbmNsdWRlcyhzZW50cnlIYW5kbGVyKSkge1xuICAgICAgcmV0dXJuIGhhbmRsZXJzO1xuICAgIH1cbiAgICAvLyBBZGQgb3VyIGhhbmRsZXIgdG8gdGhlIGxpc3RcbiAgICByZXR1cm4gWy4uLmhhbmRsZXJzLCBzZW50cnlIYW5kbGVyXTtcbiAgfVxuXG4gIC8vIElmIGl0J3MgYSBzaW5nbGUgaGFuZGxlciBvYmplY3QsIGNvbnZlcnQgdG8gYXJyYXlcbiAgaWYgKHR5cGVvZiBoYW5kbGVycyA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gW2hhbmRsZXJzLCBzZW50cnlIYW5kbGVyXTtcbiAgfVxuXG4gIC8vIFVua25vd24gdHlwZSAtIHJldHVybiBvcmlnaW5hbFxuICByZXR1cm4gaGFuZGxlcnM7XG59XG5cbi8qKlxuICogV3JhcHMgUnVubmFibGUgbWV0aG9kcyAoaW52b2tlLCBzdHJlYW0sIGJhdGNoKSB0byBpbmplY3QgU2VudHJ5IGNhbGxiYWNrcyBhdCByZXF1ZXN0IHRpbWVcbiAqIFVzZXMgYSBQcm94eSB0byBpbnRlcmNlcHQgbWV0aG9kIGNhbGxzIGFuZCBhdWdtZW50IHRoZSBvcHRpb25zLmNhbGxiYWNrc1xuICovXG5mdW5jdGlvbiB3cmFwUnVubmFibGVNZXRob2QoXG4gIG9yaWdpbmFsTWV0aG9kLFxuICBzZW50cnlIYW5kbGVyLFxuICBfbWV0aG9kTmFtZSxcbikge1xuICByZXR1cm4gbmV3IFByb3h5KG9yaWdpbmFsTWV0aG9kLCB7XG4gICAgYXBwbHkodGFyZ2V0LCB0aGlzQXJnLCBhcmdzKSB7XG4gICAgICAvLyBMYW5nQ2hhaW4gUnVubmFibGUgbWV0aG9kIHNpZ25hdHVyZXM6XG4gICAgICAvLyBpbnZva2UoaW5wdXQsIG9wdGlvbnM/KSAtIG9wdGlvbnMgY29udGFpbnMgY2FsbGJhY2tzXG4gICAgICAvLyBzdHJlYW0oaW5wdXQsIG9wdGlvbnM/KSAtIG9wdGlvbnMgY29udGFpbnMgY2FsbGJhY2tzXG4gICAgICAvLyBiYXRjaChpbnB1dHMsIG9wdGlvbnM/KSAtIG9wdGlvbnMgY29udGFpbnMgY2FsbGJhY2tzXG5cbiAgICAgIC8vIE9wdGlvbnMgaXMgdHlwaWNhbGx5IHRoZSBzZWNvbmQgYXJndW1lbnRcbiAgICAgIGNvbnN0IG9wdGlvbnNJbmRleCA9IDE7XG4gICAgICBsZXQgb3B0aW9ucyA9IGFyZ3Nbb3B0aW9uc0luZGV4XSA7XG5cbiAgICAgIC8vIElmIG9wdGlvbnMgZG9uJ3QgZXhpc3Qgb3IgYXJlbid0IGFuIG9iamVjdCwgY3JlYXRlIHRoZW1cbiAgICAgIGlmICghb3B0aW9ucyB8fCB0eXBlb2Ygb3B0aW9ucyAhPT0gJ29iamVjdCcgfHwgQXJyYXkuaXNBcnJheShvcHRpb25zKSkge1xuICAgICAgICBvcHRpb25zID0ge307XG4gICAgICAgIGFyZ3Nbb3B0aW9uc0luZGV4XSA9IG9wdGlvbnM7XG4gICAgICB9XG5cbiAgICAgIC8vIEluamVjdCBvdXIgY2FsbGJhY2sgaGFuZGxlciBpbnRvIG9wdGlvbnMuY2FsbGJhY2tzIChyZXF1ZXN0IHRpbWUgY2FsbGJhY2tzKVxuICAgICAgY29uc3QgZXhpc3RpbmdDYWxsYmFja3MgPSBvcHRpb25zLmNhbGxiYWNrcztcbiAgICAgIGNvbnN0IGF1Z21lbnRlZENhbGxiYWNrcyA9IGF1Z21lbnRDYWxsYmFja0hhbmRsZXJzKGV4aXN0aW5nQ2FsbGJhY2tzLCBzZW50cnlIYW5kbGVyKTtcbiAgICAgIG9wdGlvbnMuY2FsbGJhY2tzID0gYXVnbWVudGVkQ2FsbGJhY2tzO1xuXG4gICAgICAvLyBDYWxsIG9yaWdpbmFsIG1ldGhvZCB3aXRoIGF1Z21lbnRlZCBvcHRpb25zXG4gICAgICByZXR1cm4gUmVmbGVjdC5hcHBseSh0YXJnZXQsIHRoaXNBcmcsIGFyZ3MpO1xuICAgIH0sXG4gIH0pIDtcbn1cblxuLyoqXG4gKiBTZW50cnkgTGFuZ0NoYWluIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlMYW5nQ2hhaW5JbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBjb25zdHJ1Y3Rvcihjb25maWcgPSB7fSkge1xuICAgIHN1cGVyKCdAc2VudHJ5L2luc3RydW1lbnRhdGlvbi1sYW5nY2hhaW4nLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICogV2UgcGF0Y2ggdGhlIEJhc2VDaGF0TW9kZWwgY2xhc3MgbWV0aG9kcyB0byBpbmplY3QgY2FsbGJhY2tzXG4gICAqXG4gICAqIFdlIGhvb2sgaW50byBwcm92aWRlciBwYWNrYWdlcyAoQGxhbmdjaGFpbi9hbnRocm9waWMsIEBsYW5nY2hhaW4vb3BlbmFpLCBldGMuKVxuICAgKiBiZWNhdXNlIEBsYW5nY2hhaW4vY29yZSBpcyBvZnRlbiBidW5kbGVkIGFuZCBub3QgbG9hZGVkIGFzIGEgc2VwYXJhdGUgbW9kdWxlXG4gICAqL1xuICAgaW5pdCgpIHtcbiAgICBjb25zdCBtb2R1bGVzID0gW107XG5cbiAgICAvLyBIb29rIGludG8gY29tbW9uIExhbmdDaGFpbiBwcm92aWRlciBwYWNrYWdlc1xuICAgIGNvbnN0IHByb3ZpZGVyUGFja2FnZXMgPSBbXG4gICAgICAnQGxhbmdjaGFpbi9hbnRocm9waWMnLFxuICAgICAgJ0BsYW5nY2hhaW4vb3BlbmFpJyxcbiAgICAgICdAbGFuZ2NoYWluL2dvb2dsZS1nZW5haScsXG4gICAgICAnQGxhbmdjaGFpbi9taXN0cmFsYWknLFxuICAgICAgJ0BsYW5nY2hhaW4vZ29vZ2xlLXZlcnRleGFpJyxcbiAgICAgICdAbGFuZ2NoYWluL2dyb3EnLFxuICAgIF07XG5cbiAgICBmb3IgKGNvbnN0IHBhY2thZ2VOYW1lIG9mIHByb3ZpZGVyUGFja2FnZXMpIHtcbiAgICAgIC8vIEluIENKUywgTGFuZ0NoYWluIHBhY2thZ2VzIHJlLWV4cG9ydCBmcm9tIGRpc3QvaW5kZXguY2pzIGZpbGVzLlxuICAgICAgLy8gUGF0Y2hpbmcgb25seSB0aGUgcm9vdCBtb2R1bGUgc29tZXRpbWVzIG1pc3NlcyB0aGUgcmVhbCBpbXBsZW1lbnRhdGlvbiBvclxuICAgICAgLy8gZ2V0cyBvdmVyd3JpdHRlbiB3aGVuIHRoYXQgZmlsZSBpcyBsb2FkZWQuIFdlIGFkZCBhIGZpbGUtbGV2ZWwgcGF0Y2ggc28gdGhhdFxuICAgICAgLy8gX3BhdGNoIHJ1bnMgYWdhaW4gb24gdGhlIGNvbmNyZXRlIGltcGxlbWVudGF0aW9uXG4gICAgICBtb2R1bGVzLnB1c2goXG4gICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oXG4gICAgICAgICAgcGFja2FnZU5hbWUsXG4gICAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgICAgdGhpcy5fcGF0Y2guYmluZCh0aGlzKSxcbiAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZUZpbGUoXG4gICAgICAgICAgICAgIGAke3BhY2thZ2VOYW1lfS9kaXN0L2luZGV4LmNqc2AsXG4gICAgICAgICAgICAgIHN1cHBvcnRlZFZlcnNpb25zLFxuICAgICAgICAgICAgICB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICBdLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBIb29rIGludG8gbWFpbiAnbGFuZ2NoYWluJyBwYWNrYWdlIHRvIGNhdGNoIGluaXRDaGF0TW9kZWwgKHYxKylcbiAgICBtb2R1bGVzLnB1c2goXG4gICAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKFxuICAgICAgICAnbGFuZ2NoYWluJyxcbiAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgIHRoaXMuX3BhdGNoLmJpbmQodGhpcyksXG4gICAgICAgIGV4cG9ydHMkMSA9PiBleHBvcnRzJDEsXG4gICAgICAgIFtcbiAgICAgICAgICAvLyBUbyBjYXRjaCB0aGUgQ0pTIGJ1aWxkIHRoYXQgY29udGFpbnMgQ29uZmlndXJhYmxlTW9kZWwgLyBpbml0Q2hhdE1vZGVsIGZvciB2MVxuICAgICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZUZpbGUoXG4gICAgICAgICAgICAnbGFuZ2NoYWluL2Rpc3QvY2hhdF9tb2RlbHMvdW5pdmVyc2FsLmNqcycsXG4gICAgICAgICAgICBzdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAgICAgICAgIHRoaXMuX3BhdGNoLmJpbmQodGhpcyksXG4gICAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICApLFxuICAgICk7XG5cbiAgICByZXR1cm4gbW9kdWxlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDb3JlIHBhdGNoIGxvZ2ljIC0gcGF0Y2hlcyBjaGF0IG1vZGVsIG1ldGhvZHMgdG8gaW5qZWN0IFNlbnRyeSBjYWxsYmFja3NcbiAgICogVGhpcyBpcyBjYWxsZWQgd2hlbiBhIExhbmdDaGFpbiBwcm92aWRlciBwYWNrYWdlIGlzIGxvYWRlZFxuICAgKi9cbiAgIF9wYXRjaChleHBvcnRzJDEpIHtcbiAgICAvLyBTa2lwIEFJIHByb3ZpZGVyIHdyYXBwaW5nIG5vdyB0aGF0IExhbmdDaGFpbiBpcyBhY3R1YWxseSBiZWluZyB1c2VkXG4gICAgLy8gVGhpcyBwcmV2ZW50cyBkdXBsaWNhdGUgc3BhbnMgZnJvbSBBbnRocm9waWMvT3BlbkFJL0dvb2dsZUdlbkFJIHN0YW5kYWxvbmUgaW50ZWdyYXRpb25zXG4gICAgY29yZS5fSU5URVJOQUxfc2tpcEFpUHJvdmlkZXJXcmFwcGluZyhbXG4gICAgICBjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICAgICAgY29yZS5BTlRIUk9QSUNfQUlfSU5URUdSQVRJT05fTkFNRSxcbiAgICAgIGNvcmUuR09PR0xFX0dFTkFJX0lOVEVHUkFUSU9OX05BTUUsXG4gICAgXSk7XG5cbiAgICAvLyBDcmVhdGUgYSBzaGFyZWQgaGFuZGxlciBpbnN0YW5jZVxuICAgIGNvbnN0IHNlbnRyeUhhbmRsZXIgPSBjb3JlLmNyZWF0ZUxhbmdDaGFpbkNhbGxiYWNrSGFuZGxlcih0aGlzLmdldENvbmZpZygpKTtcblxuICAgIC8vIFBhdGNoIFJ1bm5hYmxlIG1ldGhvZHMgdG8gaW5qZWN0IGNhbGxiYWNrcyBhdCByZXF1ZXN0IHRpbWVcbiAgICAvLyBUaGlzIGRpcmVjdGx5IG1hbmlwdWxhdGVzIG9wdGlvbnMuY2FsbGJhY2tzIHRoYXQgTGFuZ0NoYWluIHVzZXNcbiAgICB0aGlzLl9wYXRjaFJ1bm5hYmxlTWV0aG9kcyhleHBvcnRzJDEsIHNlbnRyeUhhbmRsZXIpO1xuXG4gICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXRjaGVzIGNoYXQgbW9kZWwgbWV0aG9kcyAoaW52b2tlLCBzdHJlYW0sIGJhdGNoKSB0byBpbmplY3QgU2VudHJ5IGNhbGxiYWNrc1xuICAgKiBGaW5kcyBhIGNoYXQgbW9kZWwgY2xhc3MgZnJvbSB0aGUgcHJvdmlkZXIgcGFja2FnZSBleHBvcnRzIGFuZCBwYXRjaGVzIGl0cyBwcm90b3R5cGUgbWV0aG9kc1xuICAgKi9cbiAgIF9wYXRjaFJ1bm5hYmxlTWV0aG9kcyhleHBvcnRzJDEsIHNlbnRyeUhhbmRsZXIpIHtcbiAgICAvLyBLbm93biBjaGF0IG1vZGVsIGNsYXNzIG5hbWVzIGZvciBlYWNoIHByb3ZpZGVyXG4gICAgY29uc3Qga25vd25DaGF0TW9kZWxOYW1lcyA9IFtcbiAgICAgICdDaGF0QW50aHJvcGljJyxcbiAgICAgICdDaGF0T3BlbkFJJyxcbiAgICAgICdDaGF0R29vZ2xlR2VuZXJhdGl2ZUFJJyxcbiAgICAgICdDaGF0TWlzdHJhbEFJJyxcbiAgICAgICdDaGF0VmVydGV4QUknLFxuICAgICAgJ0NoYXRHcm9xJyxcbiAgICAgICdDb25maWd1cmFibGVNb2RlbCcsXG4gICAgXTtcblxuICAgIGNvbnN0IGV4cG9ydHNUb1BhdGNoID0gKGV4cG9ydHMkMS51bml2ZXJzYWxfZXhwb3J0cyA/PyBleHBvcnRzJDEpIDtcblxuICAgIGNvbnN0IGNoYXRNb2RlbENsYXNzID0gT2JqZWN0LnZhbHVlcyhleHBvcnRzVG9QYXRjaCkuZmluZChleHAgPT4ge1xuICAgICAgcmV0dXJuIHR5cGVvZiBleHAgPT09ICdmdW5jdGlvbicgJiYga25vd25DaGF0TW9kZWxOYW1lcy5pbmNsdWRlcyhleHAubmFtZSk7XG4gICAgfSkgO1xuXG4gICAgaWYgKCFjaGF0TW9kZWxDbGFzcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFBhdGNoIGRpcmVjdGx5IG9uIGNoYXRNb2RlbENsYXNzLnByb3RvdHlwZVxuICAgIGNvbnN0IHRhcmdldFByb3RvID0gY2hhdE1vZGVsQ2xhc3MucHJvdG90eXBlIDtcblxuICAgIC8vIFNraXAgaWYgYWxyZWFkeSBwYXRjaGVkIChib3RoIGZpbGUtbGV2ZWwgYW5kIG1vZHVsZS1sZXZlbCBob29rcyByZXNvbHZlIHRvIHRoZSBzYW1lIHByb3RvdHlwZSlcbiAgICBpZiAodGFyZ2V0UHJvdG8uX19zZW50cnlfcGF0Y2hlZF9fKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRhcmdldFByb3RvLl9fc2VudHJ5X3BhdGNoZWRfXyA9IHRydWU7XG5cbiAgICAvLyBQYXRjaCB0aGUgbWV0aG9kcyAoaW52b2tlLCBzdHJlYW0sIGJhdGNoKVxuICAgIC8vIEFsbCBjaGF0IG1vZGVsIGluc3RhbmNlcyB3aWxsIGluaGVyaXQgdGhlc2UgcGF0Y2hlZCBtZXRob2RzXG4gICAgY29uc3QgbWV0aG9kc1RvUGF0Y2ggPSBbJ2ludm9rZScsICdzdHJlYW0nLCAnYmF0Y2gnXSA7XG5cbiAgICBmb3IgKGNvbnN0IG1ldGhvZE5hbWUgb2YgbWV0aG9kc1RvUGF0Y2gpIHtcbiAgICAgIGNvbnN0IG1ldGhvZCA9IHRhcmdldFByb3RvW21ldGhvZE5hbWVdO1xuICAgICAgaWYgKHR5cGVvZiBtZXRob2QgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGFyZ2V0UHJvdG9bbWV0aG9kTmFtZV0gPSB3cmFwUnVubmFibGVNZXRob2QoXG4gICAgICAgICAgbWV0aG9kICxcbiAgICAgICAgICBzZW50cnlIYW5kbGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0cy5TZW50cnlMYW5nQ2hhaW5JbnN0cnVtZW50YXRpb24gPSBTZW50cnlMYW5nQ2hhaW5JbnN0cnVtZW50YXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js ***!
\*****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js\");\n\nconst instrumentLangGraph = nodeCore.generateInstrumentOnce(\n core.LANGGRAPH_INTEGRATION_NAME,\n options => new instrumentation.SentryLangGraphInstrumentation(options),\n);\n\nconst _langGraphIntegration = ((options = {}) => {\n return {\n name: core.LANGGRAPH_INTEGRATION_NAME,\n setupOnce() {\n instrumentLangGraph(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for LangGraph.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments LangGraph StateGraph and compiled graph instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.langGraphIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record input messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.langGraphIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.langGraphIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n * ## Captured Operations\n *\n * The integration captures the following LangGraph operations:\n * - **Agent Creation** (`StateGraph.compile()`) - Creates a `gen_ai.create_agent` span\n * - **Agent Invocation** (`CompiledGraph.invoke()`) - Creates a `gen_ai.invoke_agent` span\n *\n * ## Captured Data\n *\n * When `recordInputs` and `recordOutputs` are enabled, the integration captures:\n * - Input messages from the graph state\n * - Output messages and LLM responses\n * - Tool calls made during agent execution\n * - Agent and graph names\n * - Available tools configured in the graph\n *\n */\nconst langGraphIntegration = core.defineIntegration(_langGraphIntegration);\n\nexports.instrumentLangGraph = instrumentLangGraph;\nexports.langGraphIntegration = langGraphIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2dyYXBoL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsbUtBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0Q0FBNEM7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsMkJBQTJCO0FBQzNCLDRCQUE0QjtBQUM1QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9sYW5nZ3JhcGgvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRMYW5nR3JhcGggPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBjb3JlLkxBTkdHUkFQSF9JTlRFR1JBVElPTl9OQU1FLFxuICBvcHRpb25zID0+IG5ldyBpbnN0cnVtZW50YXRpb24uU2VudHJ5TGFuZ0dyYXBoSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX2xhbmdHcmFwaEludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLkxBTkdHUkFQSF9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRMYW5nR3JhcGgob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgTGFuZ0dyYXBoLlxuICpcbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgZW5hYmxlZCBieSBkZWZhdWx0LlxuICpcbiAqIFdoZW4gY29uZmlndXJlZCwgdGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IGluc3RydW1lbnRzIExhbmdHcmFwaCBTdGF0ZUdyYXBoIGFuZCBjb21waWxlZCBncmFwaCBpbnN0YW5jZXNcbiAqIHRvIGNhcHR1cmUgdGVsZW1ldHJ5IGRhdGEgZm9sbG93aW5nIE9wZW5UZWxlbWV0cnkgU2VtYW50aWMgQ29udmVudGlvbnMgZm9yIEdlbmVyYXRpdmUgQUkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGltcG9ydCAqIGFzIFNlbnRyeSBmcm9tICdAc2VudHJ5L25vZGUnO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmxhbmdHcmFwaEludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiAjIyBPcHRpb25zXG4gKlxuICogLSBgcmVjb3JkSW5wdXRzYDogV2hldGhlciB0byByZWNvcmQgaW5wdXQgbWVzc2FnZXMgKGRlZmF1bHQ6IHJlc3BlY3RzIGBzZW5kRGVmYXVsdFBpaWAgY2xpZW50IG9wdGlvbilcbiAqIC0gYHJlY29yZE91dHB1dHNgOiBXaGV0aGVyIHRvIHJlY29yZCByZXNwb25zZSB0ZXh0IChkZWZhdWx0OiByZXNwZWN0cyBgc2VuZERlZmF1bHRQaWlgIGNsaWVudCBvcHRpb24pXG4gKlxuICogIyMjIERlZmF1bHQgQmVoYXZpb3JcbiAqXG4gKiBCeSBkZWZhdWx0LCB0aGUgaW50ZWdyYXRpb24gd2lsbDpcbiAqIC0gUmVjb3JkIGlucHV0cyBhbmQgb3V0cHV0cyBPTkxZIGlmIGBzZW5kRGVmYXVsdFBpaWAgaXMgc2V0IHRvIGB0cnVlYCBpbiB5b3VyIFNlbnRyeSBjbGllbnQgb3B0aW9uc1xuICogLSBPdGhlcndpc2UsIGlucHV0cyBhbmQgb3V0cHV0cyBhcmUgTk9UIHJlY29yZGVkIHVubGVzcyBleHBsaWNpdGx5IGVuYWJsZWRcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogLy8gUmVjb3JkIGlucHV0cyBhbmQgb3V0cHV0cyB3aGVuIHNlbmREZWZhdWx0UGlpIGlzIGZhbHNlXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5sYW5nR3JhcGhJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IHRydWUsXG4gKiAgICAgICByZWNvcmRPdXRwdXRzOiB0cnVlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICpcbiAqIC8vIE5ldmVyIHJlY29yZCBpbnB1dHMvb3V0cHV0cyByZWdhcmRsZXNzIG9mIHNlbmREZWZhdWx0UGlpXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIHNlbmREZWZhdWx0UGlpOiB0cnVlLFxuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkubGFuZ0dyYXBoSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiBmYWxzZSxcbiAqICAgICAgIHJlY29yZE91dHB1dHM6IGZhbHNlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogIyMgQ2FwdHVyZWQgT3BlcmF0aW9uc1xuICpcbiAqIFRoZSBpbnRlZ3JhdGlvbiBjYXB0dXJlcyB0aGUgZm9sbG93aW5nIExhbmdHcmFwaCBvcGVyYXRpb25zOlxuICogLSAqKkFnZW50IENyZWF0aW9uKiogKGBTdGF0ZUdyYXBoLmNvbXBpbGUoKWApIC0gQ3JlYXRlcyBhIGBnZW5fYWkuY3JlYXRlX2FnZW50YCBzcGFuXG4gKiAtICoqQWdlbnQgSW52b2NhdGlvbioqIChgQ29tcGlsZWRHcmFwaC5pbnZva2UoKWApIC0gQ3JlYXRlcyBhIGBnZW5fYWkuaW52b2tlX2FnZW50YCBzcGFuXG4gKlxuICogIyMgQ2FwdHVyZWQgRGF0YVxuICpcbiAqIFdoZW4gYHJlY29yZElucHV0c2AgYW5kIGByZWNvcmRPdXRwdXRzYCBhcmUgZW5hYmxlZCwgdGhlIGludGVncmF0aW9uIGNhcHR1cmVzOlxuICogLSBJbnB1dCBtZXNzYWdlcyBmcm9tIHRoZSBncmFwaCBzdGF0ZVxuICogLSBPdXRwdXQgbWVzc2FnZXMgYW5kIExMTSByZXNwb25zZXNcbiAqIC0gVG9vbCBjYWxscyBtYWRlIGR1cmluZyBhZ2VudCBleGVjdXRpb25cbiAqIC0gQWdlbnQgYW5kIGdyYXBoIG5hbWVzXG4gKiAtIEF2YWlsYWJsZSB0b29scyBjb25maWd1cmVkIGluIHRoZSBncmFwaFxuICpcbiAqL1xuY29uc3QgbGFuZ0dyYXBoSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9sYW5nR3JhcGhJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudExhbmdHcmFwaCA9IGluc3RydW1lbnRMYW5nR3JhcGg7XG5leHBvcnRzLmxhbmdHcmFwaEludGVncmF0aW9uID0gbGFuZ0dyYXBoSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js":
/*!***************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js ***!
\***************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.0.0 <2.0.0'];\n\n/**\n * Sentry LangGraph instrumentation using OpenTelemetry.\n */\nclass SentryLangGraphInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-langgraph', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n '@langchain/langgraph',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n [\n new instrumentation.InstrumentationNodeModuleFile(\n /**\n * In CJS, LangGraph packages re-export from dist/index.cjs files.\n * Patching only the root module sometimes misses the real implementation or\n * gets overwritten when that file is loaded. We add a file-level patch so that\n * _patch runs again on the concrete implementation\n */\n '@langchain/langgraph/dist/index.cjs',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n ),\n ],\n );\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the LangGraph module.\n */\n _patch(exports$1) {\n // Patch StateGraph.compile to instrument both compile() and invoke()\n if (exports$1.StateGraph && typeof exports$1.StateGraph === 'function') {\n core.instrumentLangGraph(\n exports$1.StateGraph.prototype ,\n this.getConfig(),\n );\n }\n\n return exports$1;\n }\n}\n\nexports.SentryLangGraphInstrumentation = SentryLangGraphInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2dyYXBoL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxzQ0FBc0M7QUFDdEMiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2dyYXBoL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG5jb25zdCBzdXBwb3J0ZWRWZXJzaW9ucyA9IFsnPj0wLjAuMCA8Mi4wLjAnXTtcblxuLyoqXG4gKiBTZW50cnkgTGFuZ0dyYXBoIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlMYW5nR3JhcGhJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBjb25zdHJ1Y3Rvcihjb25maWcgPSB7fSkge1xuICAgIHN1cGVyKCdAc2VudHJ5L2luc3RydW1lbnRhdGlvbi1sYW5nZ3JhcGgnLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oXG4gICAgICAnQGxhbmdjaGFpbi9sYW5nZ3JhcGgnLFxuICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpLFxuICAgICAgZXhwb3J0cyQxID0+IGV4cG9ydHMkMSxcbiAgICAgIFtcbiAgICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRmlsZShcbiAgICAgICAgICAvKipcbiAgICAgICAgICAgKiBJbiBDSlMsIExhbmdHcmFwaCBwYWNrYWdlcyByZS1leHBvcnQgZnJvbSBkaXN0L2luZGV4LmNqcyBmaWxlcy5cbiAgICAgICAgICAgKiBQYXRjaGluZyBvbmx5IHRoZSByb290IG1vZHVsZSBzb21ldGltZXMgbWlzc2VzIHRoZSByZWFsIGltcGxlbWVudGF0aW9uIG9yXG4gICAgICAgICAgICogZ2V0cyBvdmVyd3JpdHRlbiB3aGVuIHRoYXQgZmlsZSBpcyBsb2FkZWQuIFdlIGFkZCBhIGZpbGUtbGV2ZWwgcGF0Y2ggc28gdGhhdFxuICAgICAgICAgICAqIF9wYXRjaCBydW5zIGFnYWluIG9uIHRoZSBjb25jcmV0ZSBpbXBsZW1lbnRhdGlvblxuICAgICAgICAgICAqL1xuICAgICAgICAgICdAbGFuZ2NoYWluL2xhbmdncmFwaC9kaXN0L2luZGV4LmNqcycsXG4gICAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgICAgdGhpcy5fcGF0Y2guYmluZCh0aGlzKSxcbiAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICApLFxuICAgICAgXSxcbiAgICApO1xuICAgIHJldHVybiBtb2R1bGU7XG4gIH1cblxuICAvKipcbiAgICogQ29yZSBwYXRjaCBsb2dpYyBhcHBseWluZyBpbnN0cnVtZW50YXRpb24gdG8gdGhlIExhbmdHcmFwaCBtb2R1bGUuXG4gICAqL1xuICAgX3BhdGNoKGV4cG9ydHMkMSkge1xuICAgIC8vIFBhdGNoIFN0YXRlR3JhcGguY29tcGlsZSB0byBpbnN0cnVtZW50IGJvdGggY29tcGlsZSgpIGFuZCBpbnZva2UoKVxuICAgIGlmIChleHBvcnRzJDEuU3RhdGVHcmFwaCAmJiB0eXBlb2YgZXhwb3J0cyQxLlN0YXRlR3JhcGggPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvcmUuaW5zdHJ1bWVudExhbmdHcmFwaChcbiAgICAgICAgZXhwb3J0cyQxLlN0YXRlR3JhcGgucHJvdG90eXBlICxcbiAgICAgICAgdGhpcy5nZXRDb25maWcoKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgfVxufVxuXG5leHBvcnRzLlNlbnRyeUxhbmdHcmFwaEluc3RydW1lbnRhdGlvbiA9IFNlbnRyeUxhbmdHcmFwaEluc3RydW1lbnRhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluc3RydW1lbnRhdGlvbi5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js ***!
\*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationLruMemoizer = __webpack_require__(/*! @opentelemetry/instrumentation-lru-memoizer */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-lru-memoizer@0.58.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-lru-memoizer/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'LruMemoizer';\n\nconst instrumentLruMemoizer = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationLruMemoizer.LruMemoizerInstrumentation());\n\nconst _lruMemoizerIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentLruMemoizer();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [lru-memoizer](https://www.npmjs.com/package/lru-memoizer) library.\n *\n * For more information, see the [`lruMemoizerIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/lrumemoizer/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.lruMemoizerIntegration()],\n * });\n */\nconst lruMemoizerIntegration = core.defineIntegration(_lruMemoizerIntegration);\n\nexports.instrumentLruMemoizer = instrumentLruMemoizer;\nexports.lruMemoizerIntegration = lruMemoizerIntegration;\n//# sourceMappingURL=lrumemoizer.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbHJ1bWVtb2l6ZXIuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsbUNBQW1DLG1CQUFPLENBQUMsdU9BQTZDO0FBQ3hGLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTs7QUFFQSw2QkFBNkI7QUFDN0IsOEJBQThCO0FBQzlCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2xydW1lbW9pemVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25McnVNZW1vaXplciA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1scnUtbWVtb2l6ZXInKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdMcnVNZW1vaXplcic7XG5cbmNvbnN0IGluc3RydW1lbnRMcnVNZW1vaXplciA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkxydU1lbW9pemVyLkxydU1lbW9pemVySW5zdHJ1bWVudGF0aW9uKCkpO1xuXG5jb25zdCBfbHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50THJ1TWVtb2l6ZXIoKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2xydS1tZW1vaXplcl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbHJ1LW1lbW9pemVyKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgbHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9scnVtZW1vaXplci8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmxydU1lbW9pemVySW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqL1xuY29uc3QgbHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2xydU1lbW9pemVySW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmluc3RydW1lbnRMcnVNZW1vaXplciA9IGluc3RydW1lbnRMcnVNZW1vaXplcjtcbmV4cG9ydHMubHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbiA9IGxydU1lbW9pemVySW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1scnVtZW1vaXplci5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMongodb = __webpack_require__(/*! @opentelemetry/instrumentation-mongodb */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-mongodb@0.67.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mongodb/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mongo';\n\nconst instrumentMongo = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationMongodb.MongoDBInstrumentation({\n dbStatementSerializer: _defaultDbStatementSerializer,\n responseHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.mongo');\n },\n }),\n);\n\n/**\n * Replaces values in document with '?', hiding PII and helping grouping.\n */\nfunction _defaultDbStatementSerializer(commandObj) {\n const resultObj = _scrubStatement(commandObj);\n return JSON.stringify(resultObj);\n}\n\nfunction _scrubStatement(value) {\n if (Array.isArray(value)) {\n return value.map(element => _scrubStatement(element));\n }\n\n if (isCommandObj(value)) {\n const initial = {};\n return Object.entries(value)\n .map(([key, element]) => [key, _scrubStatement(element)])\n .reduce((prev, current) => {\n if (isCommandEntry(current)) {\n prev[current[0]] = current[1];\n }\n return prev;\n }, initial);\n }\n\n // A value like string or number, possible contains PII, scrub it\n return '?';\n}\n\nfunction isCommandObj(value) {\n return typeof value === 'object' && value !== null && !isBuffer(value);\n}\n\nfunction isBuffer(value) {\n let isBuffer = false;\n if (typeof Buffer !== 'undefined') {\n isBuffer = Buffer.isBuffer(value);\n }\n return isBuffer;\n}\n\nfunction isCommandEntry(value) {\n return Array.isArray(value);\n}\n\nconst _mongoIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMongo();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mongodb](https://www.npmjs.com/package/mongodb) library.\n *\n * For more information, see the [`mongoIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mongo/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mongoIntegration()],\n * });\n * ```\n */\nconst mongoIntegration = core.defineIntegration(_mongoIntegration);\n\nexports._defaultDbStatementSerializer = _defaultDbStatementSerializer;\nexports.instrumentMongo = instrumentMongo;\nexports.mongoIntegration = mongoIntegration;\n//# sourceMappingURL=mongo.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ28uanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsK0JBQStCLG1CQUFPLENBQUMsd05BQXdDO0FBQy9FLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEscUNBQXFDO0FBQ3JDLHVCQUF1QjtBQUN2Qix3QkFBd0I7QUFDeEIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ28uanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbk1vbmdvZGIgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbW9uZ29kYicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ01vbmdvJztcblxuY29uc3QgaW5zdHJ1bWVudE1vbmdvID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgKCkgPT5cbiAgICBuZXcgaW5zdHJ1bWVudGF0aW9uTW9uZ29kYi5Nb25nb0RCSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIGRiU3RhdGVtZW50U2VyaWFsaXplcjogX2RlZmF1bHREYlN0YXRlbWVudFNlcmlhbGl6ZXIsXG4gICAgICByZXNwb25zZUhvb2soc3Bhbikge1xuICAgICAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uZGIub3RlbC5tb25nbycpO1xuICAgICAgfSxcbiAgICB9KSxcbik7XG5cbi8qKlxuICogUmVwbGFjZXMgdmFsdWVzIGluIGRvY3VtZW50IHdpdGggJz8nLCBoaWRpbmcgUElJIGFuZCBoZWxwaW5nIGdyb3VwaW5nLlxuICovXG5mdW5jdGlvbiBfZGVmYXVsdERiU3RhdGVtZW50U2VyaWFsaXplcihjb21tYW5kT2JqKSB7XG4gIGNvbnN0IHJlc3VsdE9iaiA9IF9zY3J1YlN0YXRlbWVudChjb21tYW5kT2JqKTtcbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHJlc3VsdE9iaik7XG59XG5cbmZ1bmN0aW9uIF9zY3J1YlN0YXRlbWVudCh2YWx1ZSkge1xuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUubWFwKGVsZW1lbnQgPT4gX3NjcnViU3RhdGVtZW50KGVsZW1lbnQpKTtcbiAgfVxuXG4gIGlmIChpc0NvbW1hbmRPYmoodmFsdWUpKSB7XG4gICAgY29uc3QgaW5pdGlhbCA9IHt9O1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyh2YWx1ZSlcbiAgICAgIC5tYXAoKFtrZXksIGVsZW1lbnRdKSA9PiBba2V5LCBfc2NydWJTdGF0ZW1lbnQoZWxlbWVudCldKVxuICAgICAgLnJlZHVjZSgocHJldiwgY3VycmVudCkgPT4ge1xuICAgICAgICBpZiAoaXNDb21tYW5kRW50cnkoY3VycmVudCkpIHtcbiAgICAgICAgICBwcmV2W2N1cnJlbnRbMF1dID0gY3VycmVudFsxXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcHJldjtcbiAgICAgIH0sIGluaXRpYWwpO1xuICB9XG5cbiAgLy8gQSB2YWx1ZSBsaWtlIHN0cmluZyBvciBudW1iZXIsIHBvc3NpYmxlIGNvbnRhaW5zIFBJSSwgc2NydWIgaXRcbiAgcmV0dXJuICc/Jztcbn1cblxuZnVuY3Rpb24gaXNDb21tYW5kT2JqKHZhbHVlKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICE9PSBudWxsICYmICFpc0J1ZmZlcih2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIGlzQnVmZmVyKHZhbHVlKSB7XG4gIGxldCBpc0J1ZmZlciA9IGZhbHNlO1xuICBpZiAodHlwZW9mIEJ1ZmZlciAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBpc0J1ZmZlciA9IEJ1ZmZlci5pc0J1ZmZlcih2YWx1ZSk7XG4gIH1cbiAgcmV0dXJuIGlzQnVmZmVyO1xufVxuXG5mdW5jdGlvbiBpc0NvbW1hbmRFbnRyeSh2YWx1ZSkge1xuICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSk7XG59XG5cbmNvbnN0IF9tb25nb0ludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRNb25nbygpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbbW9uZ29kYl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbW9uZ29kYikgbGlicmFyeS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYG1vbmdvSW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvbW9uZ28vKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogIGludGVncmF0aW9uczogW1NlbnRyeS5tb25nb0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgbW9uZ29JbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX21vbmdvSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLl9kZWZhdWx0RGJTdGF0ZW1lbnRTZXJpYWxpemVyID0gX2RlZmF1bHREYlN0YXRlbWVudFNlcmlhbGl6ZXI7XG5leHBvcnRzLmluc3RydW1lbnRNb25nbyA9IGluc3RydW1lbnRNb25nbztcbmV4cG9ydHMubW9uZ29JbnRlZ3JhdGlvbiA9IG1vbmdvSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1tb25nby5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMongoose = __webpack_require__(/*! @opentelemetry/instrumentation-mongoose */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-mongoose@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mongoose/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mongoose';\n\nconst instrumentMongoose = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationMongoose.MongooseInstrumentation({\n responseHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.mongoose');\n },\n }),\n);\n\nconst _mongooseIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMongoose();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mongoose](https://www.npmjs.com/package/mongoose) library.\n *\n * For more information, see the [`mongooseIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mongoose/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mongooseIntegration()],\n * });\n * ```\n */\nconst mongooseIntegration = core.defineIntegration(_mongooseIntegration);\n\nexports.instrumentMongoose = instrumentMongoose;\nexports.mongooseIntegration = mongooseIntegration;\n//# sourceMappingURL=mongoose.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ29vc2UuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsZ0NBQWdDLG1CQUFPLENBQUMsMk5BQXlDO0FBQ2pGLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEsMEJBQTBCO0FBQzFCLDJCQUEyQjtBQUMzQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9tb25nb29zZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uTW9uZ29vc2UgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbW9uZ29vc2UnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdNb25nb29zZSc7XG5cbmNvbnN0IGluc3RydW1lbnRNb25nb29zZSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+XG4gICAgbmV3IGluc3RydW1lbnRhdGlvbk1vbmdvb3NlLk1vbmdvb3NlSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIHJlc3BvbnNlSG9vayhzcGFuKSB7XG4gICAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5kYi5vdGVsLm1vbmdvb3NlJyk7XG4gICAgICB9LFxuICAgIH0pLFxuKTtcblxuY29uc3QgX21vbmdvb3NlSW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudE1vbmdvb3NlKCk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFttb25nb29zZV0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbW9uZ29vc2UpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Btb25nb29zZUludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL21vbmdvb3NlLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkubW9uZ29vc2VJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IG1vbmdvb3NlSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9tb25nb29zZUludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50TW9uZ29vc2UgPSBpbnN0cnVtZW50TW9uZ29vc2U7XG5leHBvcnRzLm1vbmdvb3NlSW50ZWdyYXRpb24gPSBtb25nb29zZUludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bW9uZ29vc2UuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMysql = __webpack_require__(/*! @opentelemetry/instrumentation-mysql */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-mysql@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mysql/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mysql';\n\nconst instrumentMysql = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationMysql.MySQLInstrumentation({}));\n\nconst _mysqlIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMysql();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mysql](https://www.npmjs.com/package/mysql) library.\n *\n * For more information, see the [`mysqlIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mysql/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mysqlIntegration()],\n * });\n * ```\n */\nconst mysqlIntegration = core.defineIntegration(_mysqlIntegration);\n\nexports.instrumentMysql = instrumentMysql;\nexports.mysqlIntegration = mysqlIntegration;\n//# sourceMappingURL=mysql.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbXlzcWwuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsNkJBQTZCLG1CQUFPLENBQUMsa05BQXNDO0FBQzNFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBLGdJQUFnSTs7QUFFaEk7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEsdUJBQXVCO0FBQ3ZCLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9teXNxbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uTXlzcWwgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbXlzcWwnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdNeXNxbCc7XG5cbmNvbnN0IGluc3RydW1lbnRNeXNxbCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbk15c3FsLk15U1FMSW5zdHJ1bWVudGF0aW9uKHt9KSk7XG5cbmNvbnN0IF9teXNxbEludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRNeXNxbCgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbbXlzcWxdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL215c3FsKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgbXlzcWxJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9teXNxbC8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5Lm15c3FsSW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqIGBgYFxuICovXG5jb25zdCBteXNxbEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfbXlzcWxJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudE15c3FsID0gaW5zdHJ1bWVudE15c3FsO1xuZXhwb3J0cy5teXNxbEludGVncmF0aW9uID0gbXlzcWxJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW15c3FsLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMysql2 = __webpack_require__(/*! @opentelemetry/instrumentation-mysql2 */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-mysql2@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mysql2/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mysql2';\n\nconst instrumentMysql2 = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationMysql2.MySQL2Instrumentation({\n responseHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.mysql2');\n },\n }),\n);\n\nconst _mysql2Integration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMysql2();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mysql2](https://www.npmjs.com/package/mysql2) library.\n *\n * For more information, see the [`mysql2Integration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mysql2/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mysqlIntegration()],\n * });\n * ```\n */\nconst mysql2Integration = core.defineIntegration(_mysql2Integration);\n\nexports.instrumentMysql2 = instrumentMysql2;\nexports.mysql2Integration = mysql2Integration;\n//# sourceMappingURL=mysql2.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbXlzcWwyLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLDhCQUE4QixtQkFBTyxDQUFDLHFOQUF1QztBQUM3RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1COztBQUU1Qzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLHdCQUF3QjtBQUN4Qix5QkFBeUI7QUFDekIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbXlzcWwyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25NeXNxbDIgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbXlzcWwyJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnTXlzcWwyJztcblxuY29uc3QgaW5zdHJ1bWVudE15c3FsMiA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+XG4gICAgbmV3IGluc3RydW1lbnRhdGlvbk15c3FsMi5NeVNRTDJJbnN0cnVtZW50YXRpb24oe1xuICAgICAgcmVzcG9uc2VIb29rKHNwYW4pIHtcbiAgICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmRiLm90ZWwubXlzcWwyJyk7XG4gICAgICB9LFxuICAgIH0pLFxuKTtcblxuY29uc3QgX215c3FsMkludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRNeXNxbDIoKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW215c3FsMl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbXlzcWwyKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgbXlzcWwySW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvbXlzcWwyLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkubXlzcWxJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IG15c3FsMkludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfbXlzcWwySW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmluc3RydW1lbnRNeXNxbDIgPSBpbnN0cnVtZW50TXlzcWwyO1xuZXhwb3J0cy5teXNxbDJJbnRlZ3JhdGlvbiA9IG15c3FsMkludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bXlzcWwyLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js\");\n\nconst instrumentOpenAi = nodeCore.generateInstrumentOnce(\n core.OPENAI_INTEGRATION_NAME,\n options => new instrumentation.SentryOpenAiInstrumentation(options),\n);\n\nconst _openAiIntegration = ((options = {}) => {\n return {\n name: core.OPENAI_INTEGRATION_NAME,\n setupOnce() {\n instrumentOpenAi(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the OpenAI SDK.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments OpenAI SDK client instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.openAIIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record prompt messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.openAIIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.openAIIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n */\nconst openAIIntegration = core.defineIntegration(_openAiIntegration);\n\nexports.instrumentOpenAi = instrumentOpenAi;\nexports.openAIIntegration = openAIIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvb3BlbmFpL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsZ0tBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSx5Q0FBeUM7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsd0JBQXdCO0FBQ3hCLHlCQUF5QjtBQUN6QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9vcGVuYWkvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRPcGVuQWkgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICBvcHRpb25zID0+IG5ldyBpbnN0cnVtZW50YXRpb24uU2VudHJ5T3BlbkFpSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX29wZW5BaUludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRPcGVuQWkob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIE9wZW5BSSBTREsuXG4gKlxuICogVGhpcyBpbnRlZ3JhdGlvbiBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuXG4gKlxuICogV2hlbiBjb25maWd1cmVkLCB0aGlzIGludGVncmF0aW9uIGF1dG9tYXRpY2FsbHkgaW5zdHJ1bWVudHMgT3BlbkFJIFNESyBjbGllbnQgaW5zdGFuY2VzXG4gKiB0byBjYXB0dXJlIHRlbGVtZXRyeSBkYXRhIGZvbGxvd2luZyBPcGVuVGVsZW1ldHJ5IFNlbWFudGljIENvbnZlbnRpb25zIGZvciBHZW5lcmF0aXZlIEFJLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBpbXBvcnQgKiBhcyBTZW50cnkgZnJvbSAnQHNlbnRyeS9ub2RlJztcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5vcGVuQUlJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogIyMgT3B0aW9uc1xuICpcbiAqIC0gYHJlY29yZElucHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHByb21wdCBtZXNzYWdlcyAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICogLSBgcmVjb3JkT3V0cHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHJlc3BvbnNlIHRleHQgKGRlZmF1bHQ6IHJlc3BlY3RzIGBzZW5kRGVmYXVsdFBpaWAgY2xpZW50IG9wdGlvbilcbiAqXG4gKiAjIyMgRGVmYXVsdCBCZWhhdmlvclxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBpbnRlZ3JhdGlvbiB3aWxsOlxuICogLSBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIE9OTFkgaWYgYHNlbmREZWZhdWx0UGlpYCBpcyBzZXQgdG8gYHRydWVgIGluIHlvdXIgU2VudHJ5IGNsaWVudCBvcHRpb25zXG4gKiAtIE90aGVyd2lzZSwgaW5wdXRzIGFuZCBvdXRwdXRzIGFyZSBOT1QgcmVjb3JkZWQgdW5sZXNzIGV4cGxpY2l0bHkgZW5hYmxlZFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiAvLyBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIHdoZW4gc2VuZERlZmF1bHRQaWkgaXMgZmFsc2VcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5Lm9wZW5BSUludGVncmF0aW9uKHtcbiAqICAgICAgIHJlY29yZElucHV0czogdHJ1ZSxcbiAqICAgICAgIHJlY29yZE91dHB1dHM6IHRydWVcbiAqICAgICB9KVxuICogICBdLFxuICogfSk7XG4gKlxuICogLy8gTmV2ZXIgcmVjb3JkIGlucHV0cy9vdXRwdXRzIHJlZ2FyZGxlc3Mgb2Ygc2VuZERlZmF1bHRQaWlcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgc2VuZERlZmF1bHRQaWk6IHRydWUsXG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5vcGVuQUlJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IGZhbHNlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogZmFsc2VcbiAqICAgICB9KVxuICogICBdLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKi9cbmNvbnN0IG9wZW5BSUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfb3BlbkFpSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmluc3RydW1lbnRPcGVuQWkgPSBpbnN0cnVtZW50T3BlbkFpO1xuZXhwb3J0cy5vcGVuQUlJbnRlZ3JhdGlvbiA9IG9wZW5BSUludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js ***!
\************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=4.0.0 <7'];\n\n/**\n * Sentry OpenAI instrumentation using OpenTelemetry.\n */\nclass SentryOpenAiInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-openai', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition('openai', supportedVersions, this._patch.bind(this));\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the OpenAI and AzureOpenAI client constructors.\n */\n _patch(exports$1) {\n let result = exports$1;\n result = this._patchClient(result, 'OpenAI');\n result = this._patchClient(result, 'AzureOpenAI');\n return result;\n }\n\n /**\n * Patch logic applying instrumentation to the specified client constructor.\n */\n _patchClient(exports$1, exportKey) {\n const Original = exports$1[exportKey];\n if (!Original) {\n return exports$1;\n }\n\n const config = this.getConfig();\n\n const WrappedOpenAI = function ( ...args) {\n // Check if wrapping should be skipped (e.g., when LangChain is handling instrumentation)\n if (core._INTERNAL_shouldSkipAiProviderWrapping(core.OPENAI_INTEGRATION_NAME)) {\n return Reflect.construct(Original, args) ;\n }\n\n const instance = Reflect.construct(Original, args);\n\n return core.instrumentOpenAiClient(instance , config);\n } ;\n\n // Preserve static and prototype chains\n Object.setPrototypeOf(WrappedOpenAI, Original);\n Object.setPrototypeOf(WrappedOpenAI.prototype, Original.prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedOpenAI, key, descriptor);\n }\n }\n }\n\n // Constructor replacement - handle read-only properties\n // The OpenAI property might have only a getter, so use defineProperty\n try {\n exports$1[exportKey] = WrappedOpenAI;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, exportKey, {\n value: WrappedOpenAI,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n\n // Wrap the default export if it points to the original constructor\n // Constructor replacement - handle read-only properties\n // The OpenAI property might have only a getter, so use defineProperty\n if (exports$1.default === Original) {\n try {\n exports$1.default = WrappedOpenAI;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, 'default', {\n value: WrappedOpenAI,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n }\n return exports$1;\n }\n}\n\nexports.SentryOpenAiInstrumentation = SentryOpenAiInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvb3BlbmFpL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsbUNBQW1DO0FBQ25DIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL29wZW5haS9pbnN0cnVtZW50YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZXNUdW5uZWxQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJTRU5UUllfUkVMRUFTRVwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeUJhc2VQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5TmV4dEpzVmVyc2lvblwiXSA9IFwiMTYuMS42XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlRnJhbWVzRGlzdERpclwiXSA9IFwiLm5leHRcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVZlcmNlbENyb25zQ29uZmlnXCJdID0gdW5kZWZpbmVkO09iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcblxuY29uc3Qgc3VwcG9ydGVkVmVyc2lvbnMgPSBbJz49NC4wLjAgPDcnXTtcblxuLyoqXG4gKiBTZW50cnkgT3BlbkFJIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlPcGVuQWlJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBjb25zdHJ1Y3Rvcihjb25maWcgPSB7fSkge1xuICAgIHN1cGVyKCdAc2VudHJ5L2luc3RydW1lbnRhdGlvbi1vcGVuYWknLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oJ29wZW5haScsIHN1cHBvcnRlZFZlcnNpb25zLCB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcmUgcGF0Y2ggbG9naWMgYXBwbHlpbmcgaW5zdHJ1bWVudGF0aW9uIHRvIHRoZSBPcGVuQUkgYW5kIEF6dXJlT3BlbkFJIGNsaWVudCBjb25zdHJ1Y3RvcnMuXG4gICAqL1xuICAgX3BhdGNoKGV4cG9ydHMkMSkge1xuICAgIGxldCByZXN1bHQgPSBleHBvcnRzJDE7XG4gICAgcmVzdWx0ID0gdGhpcy5fcGF0Y2hDbGllbnQocmVzdWx0LCAnT3BlbkFJJyk7XG4gICAgcmVzdWx0ID0gdGhpcy5fcGF0Y2hDbGllbnQocmVzdWx0LCAnQXp1cmVPcGVuQUknKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoIGxvZ2ljIGFwcGx5aW5nIGluc3RydW1lbnRhdGlvbiB0byB0aGUgc3BlY2lmaWVkIGNsaWVudCBjb25zdHJ1Y3Rvci5cbiAgICovXG4gICBfcGF0Y2hDbGllbnQoZXhwb3J0cyQxLCBleHBvcnRLZXkpIHtcbiAgICBjb25zdCBPcmlnaW5hbCA9IGV4cG9ydHMkMVtleHBvcnRLZXldO1xuICAgIGlmICghT3JpZ2luYWwpIHtcbiAgICAgIHJldHVybiBleHBvcnRzJDE7XG4gICAgfVxuXG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5nZXRDb25maWcoKTtcblxuICAgIGNvbnN0IFdyYXBwZWRPcGVuQUkgPSBmdW5jdGlvbiAoIC4uLmFyZ3MpIHtcbiAgICAgIC8vIENoZWNrIGlmIHdyYXBwaW5nIHNob3VsZCBiZSBza2lwcGVkIChlLmcuLCB3aGVuIExhbmdDaGFpbiBpcyBoYW5kbGluZyBpbnN0cnVtZW50YXRpb24pXG4gICAgICBpZiAoY29yZS5fSU5URVJOQUxfc2hvdWxkU2tpcEFpUHJvdmlkZXJXcmFwcGluZyhjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FKSkge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5jb25zdHJ1Y3QoT3JpZ2luYWwsIGFyZ3MpIDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5zdGFuY2UgPSBSZWZsZWN0LmNvbnN0cnVjdChPcmlnaW5hbCwgYXJncyk7XG5cbiAgICAgIHJldHVybiBjb3JlLmluc3RydW1lbnRPcGVuQWlDbGllbnQoaW5zdGFuY2UgLCBjb25maWcpO1xuICAgIH0gO1xuXG4gICAgLy8gUHJlc2VydmUgc3RhdGljIGFuZCBwcm90b3R5cGUgY2hhaW5zXG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRPcGVuQUksIE9yaWdpbmFsKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YoV3JhcHBlZE9wZW5BSS5wcm90b3R5cGUsIE9yaWdpbmFsLnByb3RvdHlwZSk7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhPcmlnaW5hbCkpIHtcbiAgICAgIGlmICghWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnXS5pbmNsdWRlcyhrZXkpKSB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE9yaWdpbmFsLCBrZXkpO1xuICAgICAgICBpZiAoZGVzY3JpcHRvcikge1xuICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXcmFwcGVkT3BlbkFJLCBrZXksIGRlc2NyaXB0b3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29uc3RydWN0b3IgcmVwbGFjZW1lbnQgLSBoYW5kbGUgcmVhZC1vbmx5IHByb3BlcnRpZXNcbiAgICAvLyBUaGUgT3BlbkFJIHByb3BlcnR5IG1pZ2h0IGhhdmUgb25seSBhIGdldHRlciwgc28gdXNlIGRlZmluZVByb3BlcnR5XG4gICAgdHJ5IHtcbiAgICAgIGV4cG9ydHMkMVtleHBvcnRLZXldID0gV3JhcHBlZE9wZW5BSTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElmIGRpcmVjdCBhc3NpZ25tZW50IGZhaWxzLCBvdmVycmlkZSB0aGUgcHJvcGVydHkgZGVzY3JpcHRvclxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMkMSwgZXhwb3J0S2V5LCB7XG4gICAgICAgIHZhbHVlOiBXcmFwcGVkT3BlbkFJLFxuICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gV3JhcCB0aGUgZGVmYXVsdCBleHBvcnQgaWYgaXQgcG9pbnRzIHRvIHRoZSBvcmlnaW5hbCBjb25zdHJ1Y3RvclxuICAgIC8vIENvbnN0cnVjdG9yIHJlcGxhY2VtZW50IC0gaGFuZGxlIHJlYWQtb25seSBwcm9wZXJ0aWVzXG4gICAgLy8gVGhlIE9wZW5BSSBwcm9wZXJ0eSBtaWdodCBoYXZlIG9ubHkgYSBnZXR0ZXIsIHNvIHVzZSBkZWZpbmVQcm9wZXJ0eVxuICAgIGlmIChleHBvcnRzJDEuZGVmYXVsdCA9PT0gT3JpZ2luYWwpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGV4cG9ydHMkMS5kZWZhdWx0ID0gV3JhcHBlZE9wZW5BSTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICAvLyBJZiBkaXJlY3QgYXNzaWdubWVudCBmYWlscywgb3ZlcnJpZGUgdGhlIHByb3BlcnR5IGRlc2NyaXB0b3JcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMkMSwgJ2RlZmF1bHQnLCB7XG4gICAgICAgICAgdmFsdWU6IFdyYXBwZWRPcGVuQUksXG4gICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZXhwb3J0cyQxO1xuICB9XG59XG5cbmV4cG9ydHMuU2VudHJ5T3BlbkFpSW5zdHJ1bWVudGF0aW9uID0gU2VudHJ5T3BlbkFpSW5zdHJ1bWVudGF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5zdHJ1bWVudGF0aW9uLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationPg = __webpack_require__(/*! @opentelemetry/instrumentation-pg */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-pg@0.66.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-pg/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Postgres';\n\nconst instrumentPostgres = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationPg.PgInstrumentation,\n (options) => ({\n requireParentSpan: true,\n requestHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.postgres');\n },\n ignoreConnectSpans: options?.ignoreConnectSpans ?? false,\n }),\n);\n\nconst _postgresIntegration = ((options) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentPostgres(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [pg](https://www.npmjs.com/package/pg) library.\n *\n * For more information, see the [`postgresIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/postgres/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.postgresIntegration()],\n * });\n * ```\n */\nconst postgresIntegration = core.defineIntegration(_postgresIntegration);\n\nexports.instrumentPostgres = instrumentPostgres;\nexports.postgresIntegration = postgresIntegration;\n//# sourceMappingURL=postgres.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsMEJBQTBCLG1CQUFPLENBQUMseU1BQW1DO0FBQ3JFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLDBCQUEwQjtBQUMxQiwyQkFBMkI7QUFDM0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvblBnID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLXBnJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnUG9zdGdyZXMnO1xuXG5jb25zdCBpbnN0cnVtZW50UG9zdGdyZXMgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICBpbnN0cnVtZW50YXRpb25QZy5QZ0luc3RydW1lbnRhdGlvbixcbiAgKG9wdGlvbnMpID0+ICh7XG4gICAgcmVxdWlyZVBhcmVudFNwYW46IHRydWUsXG4gICAgcmVxdWVzdEhvb2soc3Bhbikge1xuICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmRiLm90ZWwucG9zdGdyZXMnKTtcbiAgICB9LFxuICAgIGlnbm9yZUNvbm5lY3RTcGFuczogb3B0aW9ucz8uaWdub3JlQ29ubmVjdFNwYW5zID8/IGZhbHNlLFxuICB9KSxcbik7XG5cbmNvbnN0IF9wb3N0Z3Jlc0ludGVncmF0aW9uID0gKChvcHRpb25zKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50UG9zdGdyZXMob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFtwZ10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcGcpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Bwb3N0Z3Jlc0ludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL3Bvc3RncmVzLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkucG9zdGdyZXNJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IHBvc3RncmVzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9wb3N0Z3Jlc0ludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50UG9zdGdyZXMgPSBpbnN0cnVtZW50UG9zdGdyZXM7XG5leHBvcnRzLnBvc3RncmVzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlc0ludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cG9zdGdyZXMuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../debug-build.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\n// Instrumentation for https://github.com/porsager/postgres\n\n\nconst INTEGRATION_NAME = 'PostgresJs';\nconst SUPPORTED_VERSIONS = ['>=3.0.0 <4'];\nconst SQL_OPERATION_REGEX = /^(SELECT|INSERT|UPDATE|DELETE|CREATE|DROP|ALTER)/i;\n\n// Marker to track if a query was created from an instrumented sql instance\n// This prevents double-spanning when both wrapper and prototype patches are active\nconst QUERY_FROM_INSTRUMENTED_SQL = Symbol.for('sentry.query.from.instrumented.sql');\n\nconst instrumentPostgresJs = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n (options) =>\n new PostgresJsInstrumentation({\n requireParentSpan: options?.requireParentSpan ?? true,\n requestHook: options?.requestHook,\n }),\n);\n\n/**\n * Instrumentation for the [postgres](https://www.npmjs.com/package/postgres) library.\n * This instrumentation captures postgresjs queries and their attributes.\n *\n * Uses internal Sentry patching patterns to support both CommonJS and ESM environments.\n */\nclass PostgresJsInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config) {\n super('sentry-postgres-js', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by patching the postgres module.\n * Uses two complementary approaches:\n * 1. Main function wrapper: instruments sql instances created AFTER instrumentation is set up (CJS + ESM)\n * 2. Query.prototype patch: fallback for sql instances created BEFORE instrumentation (CJS only)\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n 'postgres',\n SUPPORTED_VERSIONS,\n exports$1 => {\n try {\n return this._patchPostgres(exports$1);\n } catch (e) {\n debugBuild.DEBUG_BUILD && core.debug.error('Failed to patch postgres module:', e);\n return exports$1;\n }\n },\n exports$1 => exports$1,\n );\n\n // Add fallback Query.prototype patching for pre-existing sql instances (CJS only)\n // This catches queries from sql instances created before Sentry was initialized\n ['src', 'cf/src', 'cjs/src'].forEach(path => {\n module.files.push(\n new instrumentation.InstrumentationNodeModuleFile(\n `postgres/${path}/query.js`,\n SUPPORTED_VERSIONS,\n this._patchQueryPrototype.bind(this),\n this._unpatchQueryPrototype.bind(this),\n ),\n );\n });\n\n return module;\n }\n\n /**\n * Patches the postgres module by wrapping the main export function.\n * This intercepts the creation of sql instances and instruments them.\n */\n _patchPostgres(exports$1) {\n // In CJS: exports is the function itself\n // In ESM: exports.default is the function\n const isFunction = typeof exports$1 === 'function';\n const Original = isFunction ? exports$1 : exports$1.default;\n\n if (typeof Original !== 'function') {\n debugBuild.DEBUG_BUILD && core.debug.warn('postgres module does not export a function. Skipping instrumentation.');\n return exports$1;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n\n const WrappedPostgres = function ( ...args) {\n const sql = Reflect.construct(Original , args);\n\n // Validate that construction succeeded and returned a valid function object\n if (!sql || typeof sql !== 'function') {\n debugBuild.DEBUG_BUILD && core.debug.warn('postgres() did not return a valid instance');\n return sql;\n }\n\n // Delegate to the portable instrumentation from @sentry/core\n const config = self.getConfig();\n return core.instrumentPostgresJsSql(sql, {\n requireParentSpan: config.requireParentSpan,\n requestHook: config.requestHook,\n });\n };\n\n Object.setPrototypeOf(WrappedPostgres, Original);\n Object.setPrototypeOf(WrappedPostgres.prototype, (Original ).prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedPostgres, key, descriptor);\n }\n }\n }\n\n // For CJS: the exports object IS the function, so return the wrapped function\n // For ESM: replace the default export\n if (isFunction) {\n return WrappedPostgres ;\n } else {\n core.replaceExports(exports$1, 'default', WrappedPostgres);\n return exports$1;\n }\n }\n\n /**\n * Determines whether a span should be created based on the current context.\n * If `requireParentSpan` is set to true in the configuration, a span will\n * only be created if there is a parent span available.\n */\n _shouldCreateSpans() {\n const config = this.getConfig();\n const hasParentSpan = api.trace.getSpan(api.context.active()) !== undefined;\n return hasParentSpan || !config.requireParentSpan;\n }\n\n /**\n * Extracts DB operation name from SQL query and sets it on the span.\n */\n _setOperationName(span, sanitizedQuery, command) {\n if (command) {\n span.setAttribute(semanticConventions.ATTR_DB_OPERATION_NAME, command);\n return;\n }\n // Fallback: extract operation from the SQL query\n const operationMatch = sanitizedQuery?.match(SQL_OPERATION_REGEX);\n if (operationMatch?.[1]) {\n span.setAttribute(semanticConventions.ATTR_DB_OPERATION_NAME, operationMatch[1].toUpperCase());\n }\n }\n\n /**\n * Reconstructs the full SQL query from template strings with PostgreSQL placeholders.\n *\n * For sql`SELECT * FROM users WHERE id = ${123} AND name = ${'foo'}`:\n * strings = [\"SELECT * FROM users WHERE id = \", \" AND name = \", \"\"]\n * returns: \"SELECT * FROM users WHERE id = $1 AND name = $2\"\n */\n _reconstructQuery(strings) {\n if (!strings?.length) {\n return undefined;\n }\n if (strings.length === 1) {\n return strings[0] || undefined;\n }\n // Join template parts with PostgreSQL placeholders ($1, $2, etc.)\n return strings.reduce((acc, str, i) => (i === 0 ? str : `${acc}$${i}${str}`), '');\n }\n\n /**\n * Sanitize SQL query as per the OTEL semantic conventions\n * https://opentelemetry.io/docs/specs/semconv/database/database-spans/#sanitization-of-dbquerytext\n *\n * PostgreSQL $n placeholders are preserved per OTEL spec - they're parameterized queries,\n * not sensitive literals. Only actual values (strings, numbers, booleans) are sanitized.\n */\n _sanitizeSqlQuery(sqlQuery) {\n if (!sqlQuery) {\n return 'Unknown SQL Query';\n }\n\n return (\n sqlQuery\n // Remove comments first (they may contain newlines and extra spaces)\n .replace(/--.*$/gm, '') // Single line comments (multiline mode)\n .replace(/\\/\\*[\\s\\S]*?\\*\\//g, '') // Multi-line comments\n .replace(/;\\s*$/, '') // Remove trailing semicolons\n // Collapse whitespace to a single space (after removing comments)\n .replace(/\\s+/g, ' ')\n .trim() // Remove extra spaces and trim\n // Sanitize hex/binary literals before string literals\n .replace(/\\bX'[0-9A-Fa-f]*'/gi, '?') // Hex string literals\n .replace(/\\bB'[01]*'/gi, '?') // Binary string literals\n // Sanitize string literals (handles escaped quotes)\n .replace(/'(?:[^']|'')*'/g, '?')\n // Sanitize hex numbers\n .replace(/\\b0x[0-9A-Fa-f]+/gi, '?')\n // Sanitize boolean literals\n .replace(/\\b(?:TRUE|FALSE)\\b/gi, '?')\n // Sanitize numeric literals (preserve $n placeholders via negative lookbehind)\n .replace(/-?\\b\\d+\\.?\\d*[eE][+-]?\\d+\\b/g, '?') // Scientific notation\n .replace(/-?\\b\\d+\\.\\d+\\b/g, '?') // Decimals\n .replace(/-?\\.\\d+\\b/g, '?') // Decimals starting with dot\n .replace(/(?<!\\$)-?\\b\\d+\\b/g, '?') // Integers (NOT $n placeholders)\n // Collapse IN clauses for cardinality (both ? and $n variants)\n .replace(/\\bIN\\b\\s*\\(\\s*\\?(?:\\s*,\\s*\\?)*\\s*\\)/gi, 'IN (?)')\n .replace(/\\bIN\\b\\s*\\(\\s*\\$\\d+(?:\\s*,\\s*\\$\\d+)*\\s*\\)/gi, 'IN ($?)')\n );\n }\n\n /**\n * Fallback patch for Query.prototype.handle to instrument queries from pre-existing sql instances.\n * This catches queries from sql instances created BEFORE Sentry was initialized (CJS only).\n *\n * Note: Queries from pre-existing instances won't have connection context (database, host, port)\n * because the sql instance wasn't created through our instrumented wrapper.\n */\n _patchQueryPrototype(moduleExports\n\n) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n const originalHandle = moduleExports.Query.prototype.handle;\n\n moduleExports.Query.prototype.handle = async function (\n\n ...args\n ) {\n // Skip if this query came from an instrumented sql instance (already handled by wrapper)\n if ((this )[QUERY_FROM_INSTRUMENTED_SQL]) {\n return originalHandle.apply(this, args);\n }\n\n // Skip if we shouldn't create spans\n if (!self._shouldCreateSpans()) {\n return originalHandle.apply(this, args);\n }\n\n const fullQuery = self._reconstructQuery(this.strings);\n const sanitizedSqlQuery = self._sanitizeSqlQuery(fullQuery);\n\n return core.startSpanManual(\n {\n name: sanitizedSqlQuery || 'postgresjs.query',\n op: 'db',\n },\n (span) => {\n nodeCore.addOriginToSpan(span, 'auto.db.postgresjs');\n\n span.setAttributes({\n [semanticConventions.ATTR_DB_SYSTEM_NAME]: 'postgres',\n [semanticConventions.ATTR_DB_QUERY_TEXT]: sanitizedSqlQuery,\n });\n\n // Note: No connection context available for pre-existing instances\n // because the sql instance wasn't created through our instrumented wrapper\n\n const config = self.getConfig();\n const { requestHook } = config;\n if (requestHook) {\n instrumentation.safeExecuteInTheMiddle(\n () => requestHook(span, sanitizedSqlQuery, undefined),\n e => {\n if (e) {\n span.setAttribute('sentry.hook.error', 'requestHook failed');\n debugBuild.DEBUG_BUILD && core.debug.error(`Error in requestHook for ${INTEGRATION_NAME} integration:`, e);\n }\n },\n true,\n );\n }\n\n // Wrap resolve to end span on success\n const originalResolve = this.resolve;\n this.resolve = new Proxy(originalResolve , {\n apply: (resolveTarget, resolveThisArg, resolveArgs) => {\n try {\n self._setOperationName(span, sanitizedSqlQuery, resolveArgs?.[0]?.command);\n span.end();\n } catch (e) {\n debugBuild.DEBUG_BUILD && core.debug.error('Error ending span in resolve callback:', e);\n }\n return Reflect.apply(resolveTarget, resolveThisArg, resolveArgs);\n },\n });\n\n // Wrap reject to end span on error\n const originalReject = this.reject;\n this.reject = new Proxy(originalReject , {\n apply: (rejectTarget, rejectThisArg, rejectArgs) => {\n try {\n span.setStatus({\n code: core.SPAN_STATUS_ERROR,\n message: rejectArgs?.[0]?.message || 'unknown_error',\n });\n span.setAttribute(semanticConventions.ATTR_DB_RESPONSE_STATUS_CODE, rejectArgs?.[0]?.code || 'unknown');\n span.setAttribute(semanticConventions.ATTR_ERROR_TYPE, rejectArgs?.[0]?.name || 'unknown');\n self._setOperationName(span, sanitizedSqlQuery);\n span.end();\n } catch (e) {\n debugBuild.DEBUG_BUILD && core.debug.error('Error ending span in reject callback:', e);\n }\n return Reflect.apply(rejectTarget, rejectThisArg, rejectArgs);\n },\n });\n\n try {\n return originalHandle.apply(this, args);\n } catch (e) {\n span.setStatus({\n code: core.SPAN_STATUS_ERROR,\n message: e instanceof Error ? e.message : 'unknown_error',\n });\n span.end();\n throw e;\n }\n },\n );\n };\n\n // Store original for unpatch - must be set on the NEW patched function\n moduleExports.Query.prototype.handle.__sentry_original__ = originalHandle;\n\n return moduleExports;\n }\n\n /**\n * Restores the original Query.prototype.handle method.\n */\n _unpatchQueryPrototype(moduleExports\n\n) {\n if (moduleExports.Query.prototype.handle.__sentry_original__) {\n moduleExports.Query.prototype.handle = moduleExports.Query.prototype.handle.__sentry_original__;\n }\n return moduleExports;\n }\n}\n\nconst _postgresJsIntegration = ((options) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentPostgresJs(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [postgres](https://www.npmjs.com/package/postgres) library.\n *\n * For more information, see the [`postgresIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/postgres/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.postgresJsIntegration()],\n * });\n * ```\n */\n\nconst postgresJsIntegration = core.defineIntegration(_postgresJsIntegration);\n\nexports.PostgresJsInstrumentation = PostgresJsInstrumentation;\nexports.instrumentPostgresJs = instrumentPostgresJs;\nexports.postgresJsIntegration = postgresJsIntegration;\n//# sourceMappingURL=postgresjs.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXNqcy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxnSUFBc0I7O0FBRWpEOzs7QUFHQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLEtBQUs7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSw4Q0FBOEMsS0FBSyxhQUFhLE1BQU07QUFDdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtEQUErRCxJQUFJLEdBQUcsRUFBRSxFQUFFLElBQUk7QUFDOUU7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXOztBQUVYO0FBQ0E7O0FBRUE7QUFDQSxrQkFBa0IsY0FBYztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5RkFBeUYsa0JBQWtCO0FBQzNHO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQjtBQUNoQjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsV0FBVzs7QUFFWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixXQUFXOztBQUVYO0FBQ0E7QUFDQSxZQUFZO0FBQ1o7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7O0FBRUEsaUNBQWlDO0FBQ2pDLDRCQUE0QjtBQUM1Qiw2QkFBNkI7QUFDN0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXNqcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IHNlbWFudGljQ29udmVudGlvbnMgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9zZW1hbnRpYy1jb252ZW50aW9ucycpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuY29uc3QgZGVidWdCdWlsZCA9IHJlcXVpcmUoJy4uLy4uL2RlYnVnLWJ1aWxkLmpzJyk7XG5cbi8vIEluc3RydW1lbnRhdGlvbiBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3BvcnNhZ2VyL3Bvc3RncmVzXG5cblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdQb3N0Z3Jlc0pzJztcbmNvbnN0IFNVUFBPUlRFRF9WRVJTSU9OUyA9IFsnPj0zLjAuMCA8NCddO1xuY29uc3QgU1FMX09QRVJBVElPTl9SRUdFWCA9IC9eKFNFTEVDVHxJTlNFUlR8VVBEQVRFfERFTEVURXxDUkVBVEV8RFJPUHxBTFRFUikvaTtcblxuLy8gTWFya2VyIHRvIHRyYWNrIGlmIGEgcXVlcnkgd2FzIGNyZWF0ZWQgZnJvbSBhbiBpbnN0cnVtZW50ZWQgc3FsIGluc3RhbmNlXG4vLyBUaGlzIHByZXZlbnRzIGRvdWJsZS1zcGFubmluZyB3aGVuIGJvdGggd3JhcHBlciBhbmQgcHJvdG90eXBlIHBhdGNoZXMgYXJlIGFjdGl2ZVxuY29uc3QgUVVFUllfRlJPTV9JTlNUUlVNRU5URURfU1FMID0gU3ltYm9sLmZvcignc2VudHJ5LnF1ZXJ5LmZyb20uaW5zdHJ1bWVudGVkLnNxbCcpO1xuXG5jb25zdCBpbnN0cnVtZW50UG9zdGdyZXNKcyA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gIChvcHRpb25zKSA9PlxuICAgIG5ldyBQb3N0Z3Jlc0pzSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIHJlcXVpcmVQYXJlbnRTcGFuOiBvcHRpb25zPy5yZXF1aXJlUGFyZW50U3BhbiA/PyB0cnVlLFxuICAgICAgcmVxdWVzdEhvb2s6IG9wdGlvbnM/LnJlcXVlc3RIb29rLFxuICAgIH0pLFxuKTtcblxuLyoqXG4gKiBJbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbcG9zdGdyZXNdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL3Bvc3RncmVzKSBsaWJyYXJ5LlxuICogVGhpcyBpbnN0cnVtZW50YXRpb24gY2FwdHVyZXMgcG9zdGdyZXNqcyBxdWVyaWVzIGFuZCB0aGVpciBhdHRyaWJ1dGVzLlxuICpcbiAqIFVzZXMgaW50ZXJuYWwgU2VudHJ5IHBhdGNoaW5nIHBhdHRlcm5zIHRvIHN1cHBvcnQgYm90aCBDb21tb25KUyBhbmQgRVNNIGVudmlyb25tZW50cy5cbiAqL1xuY2xhc3MgUG9zdGdyZXNKc0luc3RydW1lbnRhdGlvbiBleHRlbmRzIGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25CYXNlIHtcbiAgIGNvbnN0cnVjdG9yKGNvbmZpZykge1xuICAgIHN1cGVyKCdzZW50cnktcG9zdGdyZXMtanMnLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgcGF0Y2hpbmcgdGhlIHBvc3RncmVzIG1vZHVsZS5cbiAgICogVXNlcyB0d28gY29tcGxlbWVudGFyeSBhcHByb2FjaGVzOlxuICAgKiAxLiBNYWluIGZ1bmN0aW9uIHdyYXBwZXI6IGluc3RydW1lbnRzIHNxbCBpbnN0YW5jZXMgY3JlYXRlZCBBRlRFUiBpbnN0cnVtZW50YXRpb24gaXMgc2V0IHVwIChDSlMgKyBFU00pXG4gICAqIDIuIFF1ZXJ5LnByb3RvdHlwZSBwYXRjaDogZmFsbGJhY2sgZm9yIHNxbCBpbnN0YW5jZXMgY3JlYXRlZCBCRUZPUkUgaW5zdHJ1bWVudGF0aW9uIChDSlMgb25seSlcbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oXG4gICAgICAncG9zdGdyZXMnLFxuICAgICAgU1VQUE9SVEVEX1ZFUlNJT05TLFxuICAgICAgZXhwb3J0cyQxID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fcGF0Y2hQb3N0Z3JlcyhleHBvcnRzJDEpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgZGVidWdCdWlsZC5ERUJVR19CVUlMRCAmJiBjb3JlLmRlYnVnLmVycm9yKCdGYWlsZWQgdG8gcGF0Y2ggcG9zdGdyZXMgbW9kdWxlOicsIGUpO1xuICAgICAgICAgIHJldHVybiBleHBvcnRzJDE7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICk7XG5cbiAgICAvLyBBZGQgZmFsbGJhY2sgUXVlcnkucHJvdG90eXBlIHBhdGNoaW5nIGZvciBwcmUtZXhpc3Rpbmcgc3FsIGluc3RhbmNlcyAoQ0pTIG9ubHkpXG4gICAgLy8gVGhpcyBjYXRjaGVzIHF1ZXJpZXMgZnJvbSBzcWwgaW5zdGFuY2VzIGNyZWF0ZWQgYmVmb3JlIFNlbnRyeSB3YXMgaW5pdGlhbGl6ZWRcbiAgICBbJ3NyYycsICdjZi9zcmMnLCAnY2pzL3NyYyddLmZvckVhY2gocGF0aCA9PiB7XG4gICAgICBtb2R1bGUuZmlsZXMucHVzaChcbiAgICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRmlsZShcbiAgICAgICAgICBgcG9zdGdyZXMvJHtwYXRofS9xdWVyeS5qc2AsXG4gICAgICAgICAgU1VQUE9SVEVEX1ZFUlNJT05TLFxuICAgICAgICAgIHRoaXMuX3BhdGNoUXVlcnlQcm90b3R5cGUuYmluZCh0aGlzKSxcbiAgICAgICAgICB0aGlzLl91bnBhdGNoUXVlcnlQcm90b3R5cGUuYmluZCh0aGlzKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgdGhlIHBvc3RncmVzIG1vZHVsZSBieSB3cmFwcGluZyB0aGUgbWFpbiBleHBvcnQgZnVuY3Rpb24uXG4gICAqIFRoaXMgaW50ZXJjZXB0cyB0aGUgY3JlYXRpb24gb2Ygc3FsIGluc3RhbmNlcyBhbmQgaW5zdHJ1bWVudHMgdGhlbS5cbiAgICovXG4gICBfcGF0Y2hQb3N0Z3JlcyhleHBvcnRzJDEpIHtcbiAgICAvLyBJbiBDSlM6IGV4cG9ydHMgaXMgdGhlIGZ1bmN0aW9uIGl0c2VsZlxuICAgIC8vIEluIEVTTTogZXhwb3J0cy5kZWZhdWx0IGlzIHRoZSBmdW5jdGlvblxuICAgIGNvbnN0IGlzRnVuY3Rpb24gPSB0eXBlb2YgZXhwb3J0cyQxID09PSAnZnVuY3Rpb24nO1xuICAgIGNvbnN0IE9yaWdpbmFsID0gaXNGdW5jdGlvbiA/IGV4cG9ydHMkMSA6IGV4cG9ydHMkMS5kZWZhdWx0O1xuXG4gICAgaWYgKHR5cGVvZiBPcmlnaW5hbCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgZGVidWdCdWlsZC5ERUJVR19CVUlMRCAmJiBjb3JlLmRlYnVnLndhcm4oJ3Bvc3RncmVzIG1vZHVsZSBkb2VzIG5vdCBleHBvcnQgYSBmdW5jdGlvbi4gU2tpcHBpbmcgaW5zdHJ1bWVudGF0aW9uLicpO1xuICAgICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXRoaXMtYWxpYXNcbiAgICBjb25zdCBzZWxmID0gdGhpcztcblxuICAgIGNvbnN0IFdyYXBwZWRQb3N0Z3JlcyA9IGZ1bmN0aW9uICggLi4uYXJncykge1xuICAgICAgY29uc3Qgc3FsID0gUmVmbGVjdC5jb25zdHJ1Y3QoT3JpZ2luYWwgLCBhcmdzKTtcblxuICAgICAgLy8gVmFsaWRhdGUgdGhhdCBjb25zdHJ1Y3Rpb24gc3VjY2VlZGVkIGFuZCByZXR1cm5lZCBhIHZhbGlkIGZ1bmN0aW9uIG9iamVjdFxuICAgICAgaWYgKCFzcWwgfHwgdHlwZW9mIHNxbCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcud2FybigncG9zdGdyZXMoKSBkaWQgbm90IHJldHVybiBhIHZhbGlkIGluc3RhbmNlJyk7XG4gICAgICAgIHJldHVybiBzcWw7XG4gICAgICB9XG5cbiAgICAgIC8vIERlbGVnYXRlIHRvIHRoZSBwb3J0YWJsZSBpbnN0cnVtZW50YXRpb24gZnJvbSBAc2VudHJ5L2NvcmVcbiAgICAgIGNvbnN0IGNvbmZpZyA9IHNlbGYuZ2V0Q29uZmlnKCk7XG4gICAgICByZXR1cm4gY29yZS5pbnN0cnVtZW50UG9zdGdyZXNKc1NxbChzcWwsIHtcbiAgICAgICAgcmVxdWlyZVBhcmVudFNwYW46IGNvbmZpZy5yZXF1aXJlUGFyZW50U3BhbixcbiAgICAgICAgcmVxdWVzdEhvb2s6IGNvbmZpZy5yZXF1ZXN0SG9vayxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YoV3JhcHBlZFBvc3RncmVzLCBPcmlnaW5hbCk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRQb3N0Z3Jlcy5wcm90b3R5cGUsIChPcmlnaW5hbCApLnByb3RvdHlwZSk7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhPcmlnaW5hbCkpIHtcbiAgICAgIGlmICghWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnXS5pbmNsdWRlcyhrZXkpKSB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE9yaWdpbmFsLCBrZXkpO1xuICAgICAgICBpZiAoZGVzY3JpcHRvcikge1xuICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXcmFwcGVkUG9zdGdyZXMsIGtleSwgZGVzY3JpcHRvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGb3IgQ0pTOiB0aGUgZXhwb3J0cyBvYmplY3QgSVMgdGhlIGZ1bmN0aW9uLCBzbyByZXR1cm4gdGhlIHdyYXBwZWQgZnVuY3Rpb25cbiAgICAvLyBGb3IgRVNNOiByZXBsYWNlIHRoZSBkZWZhdWx0IGV4cG9ydFxuICAgIGlmIChpc0Z1bmN0aW9uKSB7XG4gICAgICByZXR1cm4gV3JhcHBlZFBvc3RncmVzIDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29yZS5yZXBsYWNlRXhwb3J0cyhleHBvcnRzJDEsICdkZWZhdWx0JywgV3JhcHBlZFBvc3RncmVzKTtcbiAgICAgIHJldHVybiBleHBvcnRzJDE7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBhIHNwYW4gc2hvdWxkIGJlIGNyZWF0ZWQgYmFzZWQgb24gdGhlIGN1cnJlbnQgY29udGV4dC5cbiAgICogSWYgYHJlcXVpcmVQYXJlbnRTcGFuYCBpcyBzZXQgdG8gdHJ1ZSBpbiB0aGUgY29uZmlndXJhdGlvbiwgYSBzcGFuIHdpbGxcbiAgICogb25seSBiZSBjcmVhdGVkIGlmIHRoZXJlIGlzIGEgcGFyZW50IHNwYW4gYXZhaWxhYmxlLlxuICAgKi9cbiAgIF9zaG91bGRDcmVhdGVTcGFucygpIHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldENvbmZpZygpO1xuICAgIGNvbnN0IGhhc1BhcmVudFNwYW4gPSBhcGkudHJhY2UuZ2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSkgIT09IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gaGFzUGFyZW50U3BhbiB8fCAhY29uZmlnLnJlcXVpcmVQYXJlbnRTcGFuO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4dHJhY3RzIERCIG9wZXJhdGlvbiBuYW1lIGZyb20gU1FMIHF1ZXJ5IGFuZCBzZXRzIGl0IG9uIHRoZSBzcGFuLlxuICAgKi9cbiAgIF9zZXRPcGVyYXRpb25OYW1lKHNwYW4sIHNhbml0aXplZFF1ZXJ5LCBjb21tYW5kKSB7XG4gICAgaWYgKGNvbW1hbmQpIHtcbiAgICAgIHNwYW4uc2V0QXR0cmlidXRlKHNlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9PUEVSQVRJT05fTkFNRSwgY29tbWFuZCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIEZhbGxiYWNrOiBleHRyYWN0IG9wZXJhdGlvbiBmcm9tIHRoZSBTUUwgcXVlcnlcbiAgICBjb25zdCBvcGVyYXRpb25NYXRjaCA9IHNhbml0aXplZFF1ZXJ5Py5tYXRjaChTUUxfT1BFUkFUSU9OX1JFR0VYKTtcbiAgICBpZiAob3BlcmF0aW9uTWF0Y2g/LlsxXSkge1xuICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX09QRVJBVElPTl9OQU1FLCBvcGVyYXRpb25NYXRjaFsxXS50b1VwcGVyQ2FzZSgpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVjb25zdHJ1Y3RzIHRoZSBmdWxsIFNRTCBxdWVyeSBmcm9tIHRlbXBsYXRlIHN0cmluZ3Mgd2l0aCBQb3N0Z3JlU1FMIHBsYWNlaG9sZGVycy5cbiAgICpcbiAgICogRm9yIHNxbGBTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGlkID0gJHsxMjN9IEFORCBuYW1lID0gJHsnZm9vJ31gOlxuICAgKiAgIHN0cmluZ3MgPSBbXCJTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGlkID0gXCIsIFwiIEFORCBuYW1lID0gXCIsIFwiXCJdXG4gICAqICAgcmV0dXJuczogXCJTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGlkID0gJDEgQU5EIG5hbWUgPSAkMlwiXG4gICAqL1xuICAgX3JlY29uc3RydWN0UXVlcnkoc3RyaW5ncykge1xuICAgIGlmICghc3RyaW5ncz8ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZiAoc3RyaW5ncy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBzdHJpbmdzWzBdIHx8IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgLy8gSm9pbiB0ZW1wbGF0ZSBwYXJ0cyB3aXRoIFBvc3RncmVTUUwgcGxhY2Vob2xkZXJzICgkMSwgJDIsIGV0Yy4pXG4gICAgcmV0dXJuIHN0cmluZ3MucmVkdWNlKChhY2MsIHN0ciwgaSkgPT4gKGkgPT09IDAgPyBzdHIgOiBgJHthY2N9JCR7aX0ke3N0cn1gKSwgJycpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhbml0aXplIFNRTCBxdWVyeSBhcyBwZXIgdGhlIE9URUwgc2VtYW50aWMgY29udmVudGlvbnNcbiAgICogaHR0cHM6Ly9vcGVudGVsZW1ldHJ5LmlvL2RvY3Mvc3BlY3Mvc2VtY29udi9kYXRhYmFzZS9kYXRhYmFzZS1zcGFucy8jc2FuaXRpemF0aW9uLW9mLWRicXVlcnl0ZXh0XG4gICAqXG4gICAqIFBvc3RncmVTUUwgJG4gcGxhY2Vob2xkZXJzIGFyZSBwcmVzZXJ2ZWQgcGVyIE9URUwgc3BlYyAtIHRoZXkncmUgcGFyYW1ldGVyaXplZCBxdWVyaWVzLFxuICAgKiBub3Qgc2Vuc2l0aXZlIGxpdGVyYWxzLiBPbmx5IGFjdHVhbCB2YWx1ZXMgKHN0cmluZ3MsIG51bWJlcnMsIGJvb2xlYW5zKSBhcmUgc2FuaXRpemVkLlxuICAgKi9cbiAgIF9zYW5pdGl6ZVNxbFF1ZXJ5KHNxbFF1ZXJ5KSB7XG4gICAgaWYgKCFzcWxRdWVyeSkge1xuICAgICAgcmV0dXJuICdVbmtub3duIFNRTCBRdWVyeSc7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIHNxbFF1ZXJ5XG4gICAgICAgIC8vIFJlbW92ZSBjb21tZW50cyBmaXJzdCAodGhleSBtYXkgY29udGFpbiBuZXdsaW5lcyBhbmQgZXh0cmEgc3BhY2VzKVxuICAgICAgICAucmVwbGFjZSgvLS0uKiQvZ20sICcnKSAvLyBTaW5nbGUgbGluZSBjb21tZW50cyAobXVsdGlsaW5lIG1vZGUpXG4gICAgICAgIC5yZXBsYWNlKC9cXC9cXCpbXFxzXFxTXSo/XFwqXFwvL2csICcnKSAvLyBNdWx0aS1saW5lIGNvbW1lbnRzXG4gICAgICAgIC5yZXBsYWNlKC87XFxzKiQvLCAnJykgLy8gUmVtb3ZlIHRyYWlsaW5nIHNlbWljb2xvbnNcbiAgICAgICAgLy8gQ29sbGFwc2Ugd2hpdGVzcGFjZSB0byBhIHNpbmdsZSBzcGFjZSAoYWZ0ZXIgcmVtb3ZpbmcgY29tbWVudHMpXG4gICAgICAgIC5yZXBsYWNlKC9cXHMrL2csICcgJylcbiAgICAgICAgLnRyaW0oKSAvLyBSZW1vdmUgZXh0cmEgc3BhY2VzIGFuZCB0cmltXG4gICAgICAgIC8vIFNhbml0aXplIGhleC9iaW5hcnkgbGl0ZXJhbHMgYmVmb3JlIHN0cmluZyBsaXRlcmFsc1xuICAgICAgICAucmVwbGFjZSgvXFxiWCdbMC05QS1GYS1mXSonL2dpLCAnPycpIC8vIEhleCBzdHJpbmcgbGl0ZXJhbHNcbiAgICAgICAgLnJlcGxhY2UoL1xcYkInWzAxXSonL2dpLCAnPycpIC8vIEJpbmFyeSBzdHJpbmcgbGl0ZXJhbHNcbiAgICAgICAgLy8gU2FuaXRpemUgc3RyaW5nIGxpdGVyYWxzIChoYW5kbGVzIGVzY2FwZWQgcXVvdGVzKVxuICAgICAgICAucmVwbGFjZSgvJyg/OlteJ118JycpKicvZywgJz8nKVxuICAgICAgICAvLyBTYW5pdGl6ZSBoZXggbnVtYmVyc1xuICAgICAgICAucmVwbGFjZSgvXFxiMHhbMC05QS1GYS1mXSsvZ2ksICc/JylcbiAgICAgICAgLy8gU2FuaXRpemUgYm9vbGVhbiBsaXRlcmFsc1xuICAgICAgICAucmVwbGFjZSgvXFxiKD86VFJVRXxGQUxTRSlcXGIvZ2ksICc/JylcbiAgICAgICAgLy8gU2FuaXRpemUgbnVtZXJpYyBsaXRlcmFscyAocHJlc2VydmUgJG4gcGxhY2Vob2xkZXJzIHZpYSBuZWdhdGl2ZSBsb29rYmVoaW5kKVxuICAgICAgICAucmVwbGFjZSgvLT9cXGJcXGQrXFwuP1xcZCpbZUVdWystXT9cXGQrXFxiL2csICc/JykgLy8gU2NpZW50aWZpYyBub3RhdGlvblxuICAgICAgICAucmVwbGFjZSgvLT9cXGJcXGQrXFwuXFxkK1xcYi9nLCAnPycpIC8vIERlY2ltYWxzXG4gICAgICAgIC5yZXBsYWNlKC8tP1xcLlxcZCtcXGIvZywgJz8nKSAvLyBEZWNpbWFscyBzdGFydGluZyB3aXRoIGRvdFxuICAgICAgICAucmVwbGFjZSgvKD88IVxcJCktP1xcYlxcZCtcXGIvZywgJz8nKSAvLyBJbnRlZ2VycyAoTk9UICRuIHBsYWNlaG9sZGVycylcbiAgICAgICAgLy8gQ29sbGFwc2UgSU4gY2xhdXNlcyBmb3IgY2FyZGluYWxpdHkgKGJvdGggPyBhbmQgJG4gdmFyaWFudHMpXG4gICAgICAgIC5yZXBsYWNlKC9cXGJJTlxcYlxccypcXChcXHMqXFw/KD86XFxzKixcXHMqXFw/KSpcXHMqXFwpL2dpLCAnSU4gKD8pJylcbiAgICAgICAgLnJlcGxhY2UoL1xcYklOXFxiXFxzKlxcKFxccypcXCRcXGQrKD86XFxzKixcXHMqXFwkXFxkKykqXFxzKlxcKS9naSwgJ0lOICgkPyknKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmFsbGJhY2sgcGF0Y2ggZm9yIFF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUgdG8gaW5zdHJ1bWVudCBxdWVyaWVzIGZyb20gcHJlLWV4aXN0aW5nIHNxbCBpbnN0YW5jZXMuXG4gICAqIFRoaXMgY2F0Y2hlcyBxdWVyaWVzIGZyb20gc3FsIGluc3RhbmNlcyBjcmVhdGVkIEJFRk9SRSBTZW50cnkgd2FzIGluaXRpYWxpemVkIChDSlMgb25seSkuXG4gICAqXG4gICAqIE5vdGU6IFF1ZXJpZXMgZnJvbSBwcmUtZXhpc3RpbmcgaW5zdGFuY2VzIHdvbid0IGhhdmUgY29ubmVjdGlvbiBjb250ZXh0IChkYXRhYmFzZSwgaG9zdCwgcG9ydClcbiAgICogYmVjYXVzZSB0aGUgc3FsIGluc3RhbmNlIHdhc24ndCBjcmVhdGVkIHRocm91Z2ggb3VyIGluc3RydW1lbnRlZCB3cmFwcGVyLlxuICAgKi9cbiAgIF9wYXRjaFF1ZXJ5UHJvdG90eXBlKG1vZHVsZUV4cG9ydHNcblxuKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzXG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgY29uc3Qgb3JpZ2luYWxIYW5kbGUgPSBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGU7XG5cbiAgICBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUgPSBhc3luYyBmdW5jdGlvbiAoXG5cbiAgICAgIC4uLmFyZ3NcbiAgICApIHtcbiAgICAgIC8vIFNraXAgaWYgdGhpcyBxdWVyeSBjYW1lIGZyb20gYW4gaW5zdHJ1bWVudGVkIHNxbCBpbnN0YW5jZSAoYWxyZWFkeSBoYW5kbGVkIGJ5IHdyYXBwZXIpXG4gICAgICBpZiAoKHRoaXMgKVtRVUVSWV9GUk9NX0lOU1RSVU1FTlRFRF9TUUxdKSB7XG4gICAgICAgIHJldHVybiBvcmlnaW5hbEhhbmRsZS5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2tpcCBpZiB3ZSBzaG91bGRuJ3QgY3JlYXRlIHNwYW5zXG4gICAgICBpZiAoIXNlbGYuX3Nob3VsZENyZWF0ZVNwYW5zKCkpIHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsSGFuZGxlLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBmdWxsUXVlcnkgPSBzZWxmLl9yZWNvbnN0cnVjdFF1ZXJ5KHRoaXMuc3RyaW5ncyk7XG4gICAgICBjb25zdCBzYW5pdGl6ZWRTcWxRdWVyeSA9IHNlbGYuX3Nhbml0aXplU3FsUXVlcnkoZnVsbFF1ZXJ5KTtcblxuICAgICAgcmV0dXJuIGNvcmUuc3RhcnRTcGFuTWFudWFsKFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogc2FuaXRpemVkU3FsUXVlcnkgfHwgJ3Bvc3RncmVzanMucXVlcnknLFxuICAgICAgICAgIG9wOiAnZGInLFxuICAgICAgICB9LFxuICAgICAgICAoc3BhbikgPT4ge1xuICAgICAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5kYi5wb3N0Z3Jlc2pzJyk7XG5cbiAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9TWVNURU1fTkFNRV06ICdwb3N0Z3JlcycsXG4gICAgICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX1FVRVJZX1RFWFRdOiBzYW5pdGl6ZWRTcWxRdWVyeSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIC8vIE5vdGU6IE5vIGNvbm5lY3Rpb24gY29udGV4dCBhdmFpbGFibGUgZm9yIHByZS1leGlzdGluZyBpbnN0YW5jZXNcbiAgICAgICAgICAvLyBiZWNhdXNlIHRoZSBzcWwgaW5zdGFuY2Ugd2Fzbid0IGNyZWF0ZWQgdGhyb3VnaCBvdXIgaW5zdHJ1bWVudGVkIHdyYXBwZXJcblxuICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHNlbGYuZ2V0Q29uZmlnKCk7XG4gICAgICAgICAgY29uc3QgeyByZXF1ZXN0SG9vayB9ID0gY29uZmlnO1xuICAgICAgICAgIGlmIChyZXF1ZXN0SG9vaykge1xuICAgICAgICAgICAgaW5zdHJ1bWVudGF0aW9uLnNhZmVFeGVjdXRlSW5UaGVNaWRkbGUoXG4gICAgICAgICAgICAgICgpID0+IHJlcXVlc3RIb29rKHNwYW4sIHNhbml0aXplZFNxbFF1ZXJ5LCB1bmRlZmluZWQpLFxuICAgICAgICAgICAgICBlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZSkge1xuICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3NlbnRyeS5ob29rLmVycm9yJywgJ3JlcXVlc3RIb29rIGZhaWxlZCcpO1xuICAgICAgICAgICAgICAgICAgZGVidWdCdWlsZC5ERUJVR19CVUlMRCAmJiBjb3JlLmRlYnVnLmVycm9yKGBFcnJvciBpbiByZXF1ZXN0SG9vayBmb3IgJHtJTlRFR1JBVElPTl9OQU1FfSBpbnRlZ3JhdGlvbjpgLCBlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIFdyYXAgcmVzb2x2ZSB0byBlbmQgc3BhbiBvbiBzdWNjZXNzXG4gICAgICAgICAgY29uc3Qgb3JpZ2luYWxSZXNvbHZlID0gdGhpcy5yZXNvbHZlO1xuICAgICAgICAgIHRoaXMucmVzb2x2ZSA9IG5ldyBQcm94eShvcmlnaW5hbFJlc29sdmUgLCB7XG4gICAgICAgICAgICBhcHBseTogKHJlc29sdmVUYXJnZXQsIHJlc29sdmVUaGlzQXJnLCByZXNvbHZlQXJncykgPT4ge1xuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHNlbGYuX3NldE9wZXJhdGlvbk5hbWUoc3Bhbiwgc2FuaXRpemVkU3FsUXVlcnksIHJlc29sdmVBcmdzPy5bMF0/LmNvbW1hbmQpO1xuICAgICAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcuZXJyb3IoJ0Vycm9yIGVuZGluZyBzcGFuIGluIHJlc29sdmUgY2FsbGJhY2s6JywgZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmV0dXJuIFJlZmxlY3QuYXBwbHkocmVzb2x2ZVRhcmdldCwgcmVzb2x2ZVRoaXNBcmcsIHJlc29sdmVBcmdzKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICAvLyBXcmFwIHJlamVjdCB0byBlbmQgc3BhbiBvbiBlcnJvclxuICAgICAgICAgIGNvbnN0IG9yaWdpbmFsUmVqZWN0ID0gdGhpcy5yZWplY3Q7XG4gICAgICAgICAgdGhpcy5yZWplY3QgPSBuZXcgUHJveHkob3JpZ2luYWxSZWplY3QgLCB7XG4gICAgICAgICAgICBhcHBseTogKHJlamVjdFRhcmdldCwgcmVqZWN0VGhpc0FyZywgcmVqZWN0QXJncykgPT4ge1xuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHNwYW4uc2V0U3RhdHVzKHtcbiAgICAgICAgICAgICAgICAgIGNvZGU6IGNvcmUuU1BBTl9TVEFUVVNfRVJST1IsXG4gICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZWplY3RBcmdzPy5bMF0/Lm1lc3NhZ2UgfHwgJ3Vua25vd25fZXJyb3InLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKHNlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9SRVNQT05TRV9TVEFUVVNfQ09ERSwgcmVqZWN0QXJncz8uWzBdPy5jb2RlIHx8ICd1bmtub3duJyk7XG4gICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0VSUk9SX1RZUEUsIHJlamVjdEFyZ3M/LlswXT8ubmFtZSB8fCAndW5rbm93bicpO1xuICAgICAgICAgICAgICAgIHNlbGYuX3NldE9wZXJhdGlvbk5hbWUoc3Bhbiwgc2FuaXRpemVkU3FsUXVlcnkpO1xuICAgICAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcuZXJyb3IoJ0Vycm9yIGVuZGluZyBzcGFuIGluIHJlamVjdCBjYWxsYmFjazonLCBlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5hcHBseShyZWplY3RUYXJnZXQsIHJlamVjdFRoaXNBcmcsIHJlamVjdEFyZ3MpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxIYW5kbGUuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgc3Bhbi5zZXRTdGF0dXMoe1xuICAgICAgICAgICAgICBjb2RlOiBjb3JlLlNQQU5fU1RBVFVTX0VSUk9SLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlIGluc3RhbmNlb2YgRXJyb3IgPyBlLm1lc3NhZ2UgOiAndW5rbm93bl9lcnJvcicsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfTtcblxuICAgIC8vIFN0b3JlIG9yaWdpbmFsIGZvciB1bnBhdGNoIC0gbXVzdCBiZSBzZXQgb24gdGhlIE5FVyBwYXRjaGVkIGZ1bmN0aW9uXG4gICAgbW9kdWxlRXhwb3J0cy5RdWVyeS5wcm90b3R5cGUuaGFuZGxlLl9fc2VudHJ5X29yaWdpbmFsX18gPSBvcmlnaW5hbEhhbmRsZTtcblxuICAgIHJldHVybiBtb2R1bGVFeHBvcnRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSBvcmlnaW5hbCBRdWVyeS5wcm90b3R5cGUuaGFuZGxlIG1ldGhvZC5cbiAgICovXG4gICBfdW5wYXRjaFF1ZXJ5UHJvdG90eXBlKG1vZHVsZUV4cG9ydHNcblxuKSB7XG4gICAgaWYgKG1vZHVsZUV4cG9ydHMuUXVlcnkucHJvdG90eXBlLmhhbmRsZS5fX3NlbnRyeV9vcmlnaW5hbF9fKSB7XG4gICAgICBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUgPSBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUuX19zZW50cnlfb3JpZ2luYWxfXztcbiAgICB9XG4gICAgcmV0dXJuIG1vZHVsZUV4cG9ydHM7XG4gIH1cbn1cblxuY29uc3QgX3Bvc3RncmVzSnNJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucykgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudFBvc3RncmVzSnMob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFtwb3N0Z3Jlc10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcG9zdGdyZXMpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Bwb3N0Z3Jlc0ludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL3Bvc3RncmVzLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkucG9zdGdyZXNKc0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuXG5jb25zdCBwb3N0Z3Jlc0pzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9wb3N0Z3Jlc0pzSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLlBvc3RncmVzSnNJbnN0cnVtZW50YXRpb24gPSBQb3N0Z3Jlc0pzSW5zdHJ1bWVudGF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50UG9zdGdyZXNKcyA9IGluc3RydW1lbnRQb3N0Z3Jlc0pzO1xuZXhwb3J0cy5wb3N0Z3Jlc0pzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlc0pzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wb3N0Z3Jlc2pzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @prisma/instrumentation */ \"(rsc)/./node_modules/.pnpm/@prisma+instrumentation@7.6.0_@opentelemetry+api@1.9.1/node_modules/@prisma/instrumentation/dist/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Prisma';\n\nfunction isPrismaV6TracingHelper(helper) {\n return !!helper && typeof helper === 'object' && 'dispatchEngineSpans' in helper;\n}\n\nfunction getPrismaTracingHelper() {\n const prismaInstrumentationObject = (globalThis ).PRISMA_INSTRUMENTATION;\n const prismaTracingHelper =\n prismaInstrumentationObject &&\n typeof prismaInstrumentationObject === 'object' &&\n 'helper' in prismaInstrumentationObject\n ? prismaInstrumentationObject.helper\n : undefined;\n\n return prismaTracingHelper;\n}\n\nclass SentryPrismaInteropInstrumentation extends instrumentation.PrismaInstrumentation {\n constructor(options) {\n super(options?.instrumentationConfig);\n }\n\n enable() {\n super.enable();\n\n // The PrismaIntegration (super class) defines a global variable `global[\"PRISMA_INSTRUMENTATION\"]` when `enable()` is called. This global variable holds a \"TracingHelper\" which Prisma uses internally to create tracing data. It's their way of not depending on OTEL with their main package. The sucky thing is, prisma broke the interface of the tracing helper with the v6 major update. This means that if you use Prisma 5 with the v6 instrumentation (or vice versa) Prisma just blows up, because tries to call methods on the helper that no longer exist.\n // Because we actually want to use the v6 instrumentation and not blow up in Prisma 5 user's faces, what we're doing here is backfilling the v5 method (`createEngineSpan`) with a noop so that no longer crashes when it attempts to call that function.\n const prismaTracingHelper = getPrismaTracingHelper();\n\n if (isPrismaV6TracingHelper(prismaTracingHelper)) {\n // Inspired & adjusted from https://github.com/prisma/prisma/tree/5.22.0/packages/instrumentation\n (prismaTracingHelper ).createEngineSpan = (\n engineSpanEvent,\n ) => {\n const tracer = api.trace.getTracer('prismaV5Compatibility') ;\n\n // Prisma v5 relies on being able to create spans with a specific span & trace ID\n // this is no longer possible in OTEL v2, there is no public API to do this anymore\n // So in order to kind of hack this possibility, we rely on the internal `_idGenerator` property\n // This is used to generate the random IDs, and we overwrite this temporarily to generate static IDs\n // This is flawed and may not work, e.g. if the code is bundled and the private property is renamed\n // in such cases, these spans will not be captured and some Prisma spans will be missing\n const initialIdGenerator = tracer._idGenerator;\n\n if (!initialIdGenerator) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn(\n '[Sentry] Could not find _idGenerator on tracer, skipping Prisma v5 compatibility - some Prisma spans may be missing!',\n );\n });\n\n return;\n }\n\n try {\n engineSpanEvent.spans.forEach(engineSpan => {\n const kind = engineSpanKindToOTELSpanKind(engineSpan.kind);\n\n const parentSpanId = engineSpan.parent_span_id;\n const spanId = engineSpan.span_id;\n const traceId = engineSpan.trace_id;\n\n const links = engineSpan.links?.map(link => {\n return {\n context: {\n traceId: link.trace_id,\n spanId: link.span_id,\n traceFlags: api.TraceFlags.SAMPLED,\n },\n };\n });\n\n const ctx = api.trace.setSpanContext(api.context.active(), {\n traceId,\n spanId: parentSpanId,\n traceFlags: api.TraceFlags.SAMPLED,\n });\n\n api.context.with(ctx, () => {\n const temporaryIdGenerator = {\n generateTraceId: () => {\n return traceId;\n },\n generateSpanId: () => {\n return spanId;\n },\n };\n\n tracer._idGenerator = temporaryIdGenerator;\n\n const span = tracer.startSpan(engineSpan.name, {\n kind,\n links,\n startTime: engineSpan.start_time,\n attributes: engineSpan.attributes,\n });\n\n span.end(engineSpan.end_time);\n\n tracer._idGenerator = initialIdGenerator;\n });\n });\n } finally {\n // Ensure we always restore this at the end, even if something errors\n tracer._idGenerator = initialIdGenerator;\n }\n };\n }\n }\n}\n\nfunction engineSpanKindToOTELSpanKind(engineSpanKind) {\n switch (engineSpanKind) {\n case 'client':\n return api.SpanKind.CLIENT;\n case 'internal':\n default: // Other span kinds aren't currently supported\n return api.SpanKind.INTERNAL;\n }\n}\n\nconst instrumentPrisma = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, options => {\n return new SentryPrismaInteropInstrumentation(options);\n});\n\n/**\n * Adds Sentry tracing instrumentation for the [prisma](https://www.npmjs.com/package/prisma) library.\n * For more information, see the [`prismaIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/).\n *\n * NOTE: By default, this integration works with Prisma version 6.\n * To get performance instrumentation for other Prisma versions,\n * 1. Install the `@prisma/instrumentation` package with the desired version.\n * 1. Pass a `new PrismaInstrumentation()` instance as exported from `@prisma/instrumentation` to the `prismaInstrumentation` option of this integration:\n *\n * ```js\n * import { PrismaInstrumentation } from '@prisma/instrumentation'\n *\n * Sentry.init({\n * integrations: [\n * prismaIntegration({\n * // Override the default instrumentation that Sentry uses\n * prismaInstrumentation: new PrismaInstrumentation()\n * })\n * ]\n * })\n * ```\n *\n * The passed instrumentation instance will override the default instrumentation instance the integration would use, while the `prismaIntegration` will still ensure data compatibility for the various Prisma versions.\n * 1. Depending on your Prisma version (prior to version 6), add `previewFeatures = [\"tracing\"]` to the client generator block of your Prisma schema:\n *\n * ```\n * generator client {\n * provider = \"prisma-client-js\"\n * previewFeatures = [\"tracing\"]\n * }\n * ```\n */\nconst prismaIntegration = core.defineIntegration((options) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentPrisma(options);\n },\n setup(client) {\n // If no tracing helper exists, we skip any work here\n // this means that prisma is not being used\n if (!getPrismaTracingHelper()) {\n return;\n }\n\n client.on('spanStart', span => {\n const spanJSON = core.spanToJSON(span);\n if (spanJSON.description?.startsWith('prisma:')) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.prisma');\n }\n\n // Make sure we use the query text as the span name, for ex. SELECT * FROM \"User\" WHERE \"id\" = $1\n if (spanJSON.description === 'prisma:engine:db_query' && spanJSON.data['db.query.text']) {\n span.updateName(spanJSON.data['db.query.text'] );\n }\n\n // In Prisma v5.22+, the `db.system` attribute is automatically set\n // On older versions, this is missing, so we add it here\n if (spanJSON.description === 'prisma:engine:db_query' && !spanJSON.data['db.system']) {\n span.setAttribute('db.system', 'prisma');\n }\n });\n },\n };\n});\n\nexports.instrumentPrisma = instrumentPrisma;\nexports.prismaIntegration = prismaIntegration;\n//# sourceMappingURL=prisma.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcHJpc21hLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLFlBQVksbUJBQU8sQ0FBQyxrSUFBb0I7QUFDeEMsd0JBQXdCLG1CQUFPLENBQUMscUtBQXlCO0FBQ3pELGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7O0FBRVg7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBLGFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7O0FBRWY7O0FBRUE7QUFDQSxhQUFhO0FBQ2IsV0FBVztBQUNYLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLHdCQUF3QjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQsd0JBQXdCO0FBQ3hCLHlCQUF5QjtBQUN6QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9wcmlzbWEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQHByaXNtYS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdQcmlzbWEnO1xuXG5mdW5jdGlvbiBpc1ByaXNtYVY2VHJhY2luZ0hlbHBlcihoZWxwZXIpIHtcbiAgcmV0dXJuICEhaGVscGVyICYmIHR5cGVvZiBoZWxwZXIgPT09ICdvYmplY3QnICYmICdkaXNwYXRjaEVuZ2luZVNwYW5zJyBpbiBoZWxwZXI7XG59XG5cbmZ1bmN0aW9uIGdldFByaXNtYVRyYWNpbmdIZWxwZXIoKSB7XG4gIGNvbnN0IHByaXNtYUluc3RydW1lbnRhdGlvbk9iamVjdCA9IChnbG9iYWxUaGlzICkuUFJJU01BX0lOU1RSVU1FTlRBVElPTjtcbiAgY29uc3QgcHJpc21hVHJhY2luZ0hlbHBlciA9XG4gICAgcHJpc21hSW5zdHJ1bWVudGF0aW9uT2JqZWN0ICYmXG4gICAgdHlwZW9mIHByaXNtYUluc3RydW1lbnRhdGlvbk9iamVjdCA9PT0gJ29iamVjdCcgJiZcbiAgICAnaGVscGVyJyBpbiBwcmlzbWFJbnN0cnVtZW50YXRpb25PYmplY3RcbiAgICAgID8gcHJpc21hSW5zdHJ1bWVudGF0aW9uT2JqZWN0LmhlbHBlclxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgcmV0dXJuIHByaXNtYVRyYWNpbmdIZWxwZXI7XG59XG5cbmNsYXNzIFNlbnRyeVByaXNtYUludGVyb3BJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uUHJpc21hSW5zdHJ1bWVudGF0aW9uIHtcbiAgIGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcbiAgICBzdXBlcihvcHRpb25zPy5pbnN0cnVtZW50YXRpb25Db25maWcpO1xuICB9XG5cbiAgIGVuYWJsZSgpIHtcbiAgICBzdXBlci5lbmFibGUoKTtcblxuICAgIC8vIFRoZSBQcmlzbWFJbnRlZ3JhdGlvbiAoc3VwZXIgY2xhc3MpIGRlZmluZXMgYSBnbG9iYWwgdmFyaWFibGUgYGdsb2JhbFtcIlBSSVNNQV9JTlNUUlVNRU5UQVRJT05cIl1gIHdoZW4gYGVuYWJsZSgpYCBpcyBjYWxsZWQuIFRoaXMgZ2xvYmFsIHZhcmlhYmxlIGhvbGRzIGEgXCJUcmFjaW5nSGVscGVyXCIgd2hpY2ggUHJpc21hIHVzZXMgaW50ZXJuYWxseSB0byBjcmVhdGUgdHJhY2luZyBkYXRhLiBJdCdzIHRoZWlyIHdheSBvZiBub3QgZGVwZW5kaW5nIG9uIE9URUwgd2l0aCB0aGVpciBtYWluIHBhY2thZ2UuIFRoZSBzdWNreSB0aGluZyBpcywgcHJpc21hIGJyb2tlIHRoZSBpbnRlcmZhY2Ugb2YgdGhlIHRyYWNpbmcgaGVscGVyIHdpdGggdGhlIHY2IG1ham9yIHVwZGF0ZS4gVGhpcyBtZWFucyB0aGF0IGlmIHlvdSB1c2UgUHJpc21hIDUgd2l0aCB0aGUgdjYgaW5zdHJ1bWVudGF0aW9uIChvciB2aWNlIHZlcnNhKSBQcmlzbWEganVzdCBibG93cyB1cCwgYmVjYXVzZSB0cmllcyB0byBjYWxsIG1ldGhvZHMgb24gdGhlIGhlbHBlciB0aGF0IG5vIGxvbmdlciBleGlzdC5cbiAgICAvLyBCZWNhdXNlIHdlIGFjdHVhbGx5IHdhbnQgdG8gdXNlIHRoZSB2NiBpbnN0cnVtZW50YXRpb24gYW5kIG5vdCBibG93IHVwIGluIFByaXNtYSA1IHVzZXIncyBmYWNlcywgd2hhdCB3ZSdyZSBkb2luZyBoZXJlIGlzIGJhY2tmaWxsaW5nIHRoZSB2NSBtZXRob2QgKGBjcmVhdGVFbmdpbmVTcGFuYCkgd2l0aCBhIG5vb3Agc28gdGhhdCBubyBsb25nZXIgY3Jhc2hlcyB3aGVuIGl0IGF0dGVtcHRzIHRvIGNhbGwgdGhhdCBmdW5jdGlvbi5cbiAgICBjb25zdCBwcmlzbWFUcmFjaW5nSGVscGVyID0gZ2V0UHJpc21hVHJhY2luZ0hlbHBlcigpO1xuXG4gICAgaWYgKGlzUHJpc21hVjZUcmFjaW5nSGVscGVyKHByaXNtYVRyYWNpbmdIZWxwZXIpKSB7XG4gICAgICAvLyBJbnNwaXJlZCAmIGFkanVzdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ByaXNtYS9wcmlzbWEvdHJlZS81LjIyLjAvcGFja2FnZXMvaW5zdHJ1bWVudGF0aW9uXG4gICAgICAocHJpc21hVHJhY2luZ0hlbHBlciApLmNyZWF0ZUVuZ2luZVNwYW4gPSAoXG4gICAgICAgIGVuZ2luZVNwYW5FdmVudCxcbiAgICAgICkgPT4ge1xuICAgICAgICBjb25zdCB0cmFjZXIgPSBhcGkudHJhY2UuZ2V0VHJhY2VyKCdwcmlzbWFWNUNvbXBhdGliaWxpdHknKSA7XG5cbiAgICAgICAgLy8gUHJpc21hIHY1IHJlbGllcyBvbiBiZWluZyBhYmxlIHRvIGNyZWF0ZSBzcGFucyB3aXRoIGEgc3BlY2lmaWMgc3BhbiAmIHRyYWNlIElEXG4gICAgICAgIC8vIHRoaXMgaXMgbm8gbG9uZ2VyIHBvc3NpYmxlIGluIE9URUwgdjIsIHRoZXJlIGlzIG5vIHB1YmxpYyBBUEkgdG8gZG8gdGhpcyBhbnltb3JlXG4gICAgICAgIC8vIFNvIGluIG9yZGVyIHRvIGtpbmQgb2YgaGFjayB0aGlzIHBvc3NpYmlsaXR5LCB3ZSByZWx5IG9uIHRoZSBpbnRlcm5hbCBgX2lkR2VuZXJhdG9yYCBwcm9wZXJ0eVxuICAgICAgICAvLyBUaGlzIGlzIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIHJhbmRvbSBJRHMsIGFuZCB3ZSBvdmVyd3JpdGUgdGhpcyB0ZW1wb3JhcmlseSB0byBnZW5lcmF0ZSBzdGF0aWMgSURzXG4gICAgICAgIC8vIFRoaXMgaXMgZmxhd2VkIGFuZCBtYXkgbm90IHdvcmssIGUuZy4gaWYgdGhlIGNvZGUgaXMgYnVuZGxlZCBhbmQgdGhlIHByaXZhdGUgcHJvcGVydHkgaXMgcmVuYW1lZFxuICAgICAgICAvLyBpbiBzdWNoIGNhc2VzLCB0aGVzZSBzcGFucyB3aWxsIG5vdCBiZSBjYXB0dXJlZCBhbmQgc29tZSBQcmlzbWEgc3BhbnMgd2lsbCBiZSBtaXNzaW5nXG4gICAgICAgIGNvbnN0IGluaXRpYWxJZEdlbmVyYXRvciA9IHRyYWNlci5faWRHZW5lcmF0b3I7XG5cbiAgICAgICAgaWYgKCFpbml0aWFsSWRHZW5lcmF0b3IpIHtcbiAgICAgICAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgICdbU2VudHJ5XSBDb3VsZCBub3QgZmluZCBfaWRHZW5lcmF0b3Igb24gdHJhY2VyLCBza2lwcGluZyBQcmlzbWEgdjUgY29tcGF0aWJpbGl0eSAtIHNvbWUgUHJpc21hIHNwYW5zIG1heSBiZSBtaXNzaW5nIScsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBlbmdpbmVTcGFuRXZlbnQuc3BhbnMuZm9yRWFjaChlbmdpbmVTcGFuID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGtpbmQgPSBlbmdpbmVTcGFuS2luZFRvT1RFTFNwYW5LaW5kKGVuZ2luZVNwYW4ua2luZCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHBhcmVudFNwYW5JZCA9IGVuZ2luZVNwYW4ucGFyZW50X3NwYW5faWQ7XG4gICAgICAgICAgICBjb25zdCBzcGFuSWQgPSBlbmdpbmVTcGFuLnNwYW5faWQ7XG4gICAgICAgICAgICBjb25zdCB0cmFjZUlkID0gZW5naW5lU3Bhbi50cmFjZV9pZDtcblxuICAgICAgICAgICAgY29uc3QgbGlua3MgPSBlbmdpbmVTcGFuLmxpbmtzPy5tYXAobGluayA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgdHJhY2VJZDogbGluay50cmFjZV9pZCxcbiAgICAgICAgICAgICAgICAgIHNwYW5JZDogbGluay5zcGFuX2lkLFxuICAgICAgICAgICAgICAgICAgdHJhY2VGbGFnczogYXBpLlRyYWNlRmxhZ3MuU0FNUExFRCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGN0eCA9IGFwaS50cmFjZS5zZXRTcGFuQ29udGV4dChhcGkuY29udGV4dC5hY3RpdmUoKSwge1xuICAgICAgICAgICAgICB0cmFjZUlkLFxuICAgICAgICAgICAgICBzcGFuSWQ6IHBhcmVudFNwYW5JZCxcbiAgICAgICAgICAgICAgdHJhY2VGbGFnczogYXBpLlRyYWNlRmxhZ3MuU0FNUExFRCxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBhcGkuY29udGV4dC53aXRoKGN0eCwgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB0ZW1wb3JhcnlJZEdlbmVyYXRvciA9IHtcbiAgICAgICAgICAgICAgICBnZW5lcmF0ZVRyYWNlSWQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB0cmFjZUlkO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZ2VuZXJhdGVTcGFuSWQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBzcGFuSWQ7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICB0cmFjZXIuX2lkR2VuZXJhdG9yID0gdGVtcG9yYXJ5SWRHZW5lcmF0b3I7XG5cbiAgICAgICAgICAgICAgY29uc3Qgc3BhbiA9IHRyYWNlci5zdGFydFNwYW4oZW5naW5lU3Bhbi5uYW1lLCB7XG4gICAgICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgICAgICBsaW5rcyxcbiAgICAgICAgICAgICAgICBzdGFydFRpbWU6IGVuZ2luZVNwYW4uc3RhcnRfdGltZSxcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBlbmdpbmVTcGFuLmF0dHJpYnV0ZXMsXG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgIHNwYW4uZW5kKGVuZ2luZVNwYW4uZW5kX3RpbWUpO1xuXG4gICAgICAgICAgICAgIHRyYWNlci5faWRHZW5lcmF0b3IgPSBpbml0aWFsSWRHZW5lcmF0b3I7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAvLyBFbnN1cmUgd2UgYWx3YXlzIHJlc3RvcmUgdGhpcyBhdCB0aGUgZW5kLCBldmVuIGlmIHNvbWV0aGluZyBlcnJvcnNcbiAgICAgICAgICB0cmFjZXIuX2lkR2VuZXJhdG9yID0gaW5pdGlhbElkR2VuZXJhdG9yO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBlbmdpbmVTcGFuS2luZFRvT1RFTFNwYW5LaW5kKGVuZ2luZVNwYW5LaW5kKSB7XG4gIHN3aXRjaCAoZW5naW5lU3BhbktpbmQpIHtcbiAgICBjYXNlICdjbGllbnQnOlxuICAgICAgcmV0dXJuIGFwaS5TcGFuS2luZC5DTElFTlQ7XG4gICAgY2FzZSAnaW50ZXJuYWwnOlxuICAgIGRlZmF1bHQ6IC8vIE90aGVyIHNwYW4ga2luZHMgYXJlbid0IGN1cnJlbnRseSBzdXBwb3J0ZWRcbiAgICAgIHJldHVybiBhcGkuU3BhbktpbmQuSU5URVJOQUw7XG4gIH1cbn1cblxuY29uc3QgaW5zdHJ1bWVudFByaXNtYSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgb3B0aW9ucyA9PiB7XG4gIHJldHVybiBuZXcgU2VudHJ5UHJpc21hSW50ZXJvcEluc3RydW1lbnRhdGlvbihvcHRpb25zKTtcbn0pO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW3ByaXNtYV0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcHJpc21hKSBsaWJyYXJ5LlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BwcmlzbWFJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9wcmlzbWEvKS5cbiAqXG4gKiBOT1RFOiBCeSBkZWZhdWx0LCB0aGlzIGludGVncmF0aW9uIHdvcmtzIHdpdGggUHJpc21hIHZlcnNpb24gNi5cbiAqIFRvIGdldCBwZXJmb3JtYW5jZSBpbnN0cnVtZW50YXRpb24gZm9yIG90aGVyIFByaXNtYSB2ZXJzaW9ucyxcbiAqIDEuIEluc3RhbGwgdGhlIGBAcHJpc21hL2luc3RydW1lbnRhdGlvbmAgcGFja2FnZSB3aXRoIHRoZSBkZXNpcmVkIHZlcnNpb24uXG4gKiAxLiBQYXNzIGEgYG5ldyBQcmlzbWFJbnN0cnVtZW50YXRpb24oKWAgaW5zdGFuY2UgYXMgZXhwb3J0ZWQgZnJvbSBgQHByaXNtYS9pbnN0cnVtZW50YXRpb25gIHRvIHRoZSBgcHJpc21hSW5zdHJ1bWVudGF0aW9uYCBvcHRpb24gb2YgdGhpcyBpbnRlZ3JhdGlvbjpcbiAqXG4gKiAgICBgYGBqc1xuICogICAgaW1wb3J0IHsgUHJpc21hSW5zdHJ1bWVudGF0aW9uIH0gZnJvbSAnQHByaXNtYS9pbnN0cnVtZW50YXRpb24nXG4gKlxuICogICAgU2VudHJ5LmluaXQoe1xuICogICAgICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICAgICBwcmlzbWFJbnRlZ3JhdGlvbih7XG4gKiAgICAgICAgICAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdCBpbnN0cnVtZW50YXRpb24gdGhhdCBTZW50cnkgdXNlc1xuICogICAgICAgICAgcHJpc21hSW5zdHJ1bWVudGF0aW9uOiBuZXcgUHJpc21hSW5zdHJ1bWVudGF0aW9uKClcbiAqICAgICAgICB9KVxuICogICAgICBdXG4gKiAgICB9KVxuICogICAgYGBgXG4gKlxuICogICAgVGhlIHBhc3NlZCBpbnN0cnVtZW50YXRpb24gaW5zdGFuY2Ugd2lsbCBvdmVycmlkZSB0aGUgZGVmYXVsdCBpbnN0cnVtZW50YXRpb24gaW5zdGFuY2UgdGhlIGludGVncmF0aW9uIHdvdWxkIHVzZSwgd2hpbGUgdGhlIGBwcmlzbWFJbnRlZ3JhdGlvbmAgd2lsbCBzdGlsbCBlbnN1cmUgZGF0YSBjb21wYXRpYmlsaXR5IGZvciB0aGUgdmFyaW91cyBQcmlzbWEgdmVyc2lvbnMuXG4gKiAxLiBEZXBlbmRpbmcgb24geW91ciBQcmlzbWEgdmVyc2lvbiAocHJpb3IgdG8gdmVyc2lvbiA2KSwgYWRkIGBwcmV2aWV3RmVhdHVyZXMgPSBbXCJ0cmFjaW5nXCJdYCB0byB0aGUgY2xpZW50IGdlbmVyYXRvciBibG9jayBvZiB5b3VyIFByaXNtYSBzY2hlbWE6XG4gKlxuICogICAgYGBgXG4gKiAgICBnZW5lcmF0b3IgY2xpZW50IHtcbiAqICAgICAgcHJvdmlkZXIgPSBcInByaXNtYS1jbGllbnQtanNcIlxuICogICAgICBwcmV2aWV3RmVhdHVyZXMgPSBbXCJ0cmFjaW5nXCJdXG4gKiAgICB9XG4gKiAgICBgYGBcbiAqL1xuY29uc3QgcHJpc21hSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChvcHRpb25zKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50UHJpc21hKG9wdGlvbnMpO1xuICAgIH0sXG4gICAgc2V0dXAoY2xpZW50KSB7XG4gICAgICAvLyBJZiBubyB0cmFjaW5nIGhlbHBlciBleGlzdHMsIHdlIHNraXAgYW55IHdvcmsgaGVyZVxuICAgICAgLy8gdGhpcyBtZWFucyB0aGF0IHByaXNtYSBpcyBub3QgYmVpbmcgdXNlZFxuICAgICAgaWYgKCFnZXRQcmlzbWFUcmFjaW5nSGVscGVyKCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjbGllbnQub24oJ3NwYW5TdGFydCcsIHNwYW4gPT4ge1xuICAgICAgICBjb25zdCBzcGFuSlNPTiA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgICAgICAgaWYgKHNwYW5KU09OLmRlc2NyaXB0aW9uPy5zdGFydHNXaXRoKCdwcmlzbWE6JykpIHtcbiAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1JJR0lOLCAnYXV0by5kYi5vdGVsLnByaXNtYScpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTWFrZSBzdXJlIHdlIHVzZSB0aGUgcXVlcnkgdGV4dCBhcyB0aGUgc3BhbiBuYW1lLCBmb3IgZXguIFNFTEVDVCAqIEZST00gXCJVc2VyXCIgV0hFUkUgXCJpZFwiID0gJDFcbiAgICAgICAgaWYgKHNwYW5KU09OLmRlc2NyaXB0aW9uID09PSAncHJpc21hOmVuZ2luZTpkYl9xdWVyeScgJiYgc3BhbkpTT04uZGF0YVsnZGIucXVlcnkudGV4dCddKSB7XG4gICAgICAgICAgc3Bhbi51cGRhdGVOYW1lKHNwYW5KU09OLmRhdGFbJ2RiLnF1ZXJ5LnRleHQnXSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW4gUHJpc21hIHY1LjIyKywgdGhlIGBkYi5zeXN0ZW1gIGF0dHJpYnV0ZSBpcyBhdXRvbWF0aWNhbGx5IHNldFxuICAgICAgICAvLyBPbiBvbGRlciB2ZXJzaW9ucywgdGhpcyBpcyBtaXNzaW5nLCBzbyB3ZSBhZGQgaXQgaGVyZVxuICAgICAgICBpZiAoc3BhbkpTT04uZGVzY3JpcHRpb24gPT09ICdwcmlzbWE6ZW5naW5lOmRiX3F1ZXJ5JyAmJiAhc3BhbkpTT04uZGF0YVsnZGIuc3lzdGVtJ10pIHtcbiAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnZGIuc3lzdGVtJywgJ3ByaXNtYScpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICB9O1xufSk7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudFByaXNtYSA9IGluc3RydW1lbnRQcmlzbWE7XG5leHBvcnRzLnByaXNtYUludGVncmF0aW9uID0gcHJpc21hSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wcmlzbWEuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationIoredis = __webpack_require__(/*! @opentelemetry/instrumentation-ioredis */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-ioredis@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-ioredis/build/src/index.js\");\nconst instrumentationRedis = __webpack_require__(/*! @opentelemetry/instrumentation-redis */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-redis@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-redis/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst redisCache = __webpack_require__(/*! ../../utils/redisCache.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js\");\n\nconst INTEGRATION_NAME = 'Redis';\n\n/* Only exported for testing purposes */\nexports._redisOptions = {};\n\n/* Only exported for testing purposes */\nconst cacheResponseHook = (\n span,\n redisCommand,\n cmdArgs,\n response,\n) => {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.redis');\n\n const safeKey = redisCache.getCacheKeySafely(redisCommand, cmdArgs);\n const cacheOperation = redisCache.getCacheOperation(redisCommand);\n\n if (\n !safeKey ||\n !cacheOperation ||\n !exports._redisOptions.cachePrefixes ||\n !redisCache.shouldConsiderForCache(redisCommand, safeKey, exports._redisOptions.cachePrefixes)\n ) {\n // not relevant for cache\n return;\n }\n\n // otel/ioredis seems to be using the old standard, as there was a change to those params: https://github.com/open-telemetry/opentelemetry-specification/issues/3199\n // We are using params based on the docs: https://opentelemetry.io/docs/specs/semconv/attributes-registry/network/\n const networkPeerAddress = core.spanToJSON(span).data['net.peer.name'];\n const networkPeerPort = core.spanToJSON(span).data['net.peer.port'];\n if (networkPeerPort && networkPeerAddress) {\n span.setAttributes({ 'network.peer.address': networkPeerAddress, 'network.peer.port': networkPeerPort });\n }\n\n const cacheItemSize = redisCache.calculateCacheItemSize(response);\n\n if (cacheItemSize) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_CACHE_ITEM_SIZE, cacheItemSize);\n }\n\n if (redisCache.isInCommands(redisCache.GET_COMMANDS, redisCommand) && cacheItemSize !== undefined) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_CACHE_HIT, cacheItemSize > 0);\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: cacheOperation,\n [core.SEMANTIC_ATTRIBUTE_CACHE_KEY]: safeKey,\n });\n\n // todo: change to string[] once EAP supports it\n const spanDescription = safeKey.join(', ');\n\n span.updateName(\n exports._redisOptions.maxCacheKeyLength ? core.truncate(spanDescription, exports._redisOptions.maxCacheKeyLength) : spanDescription,\n );\n};\n\nconst instrumentIORedis = nodeCore.generateInstrumentOnce(`${INTEGRATION_NAME}.IORedis`, () => {\n return new instrumentationIoredis.IORedisInstrumentation({\n responseHook: cacheResponseHook,\n });\n});\n\nconst instrumentRedisModule = nodeCore.generateInstrumentOnce(`${INTEGRATION_NAME}.Redis`, () => {\n return new instrumentationRedis.RedisInstrumentation({\n responseHook: cacheResponseHook,\n });\n});\n\n/** To be able to preload all Redis OTel instrumentations with just one ID (\"Redis\"), all the instrumentations are generated in this one function */\nconst instrumentRedis = Object.assign(\n () => {\n instrumentIORedis();\n instrumentRedisModule();\n\n // todo: implement them gradually\n // new LegacyRedisInstrumentation({}),\n },\n { id: INTEGRATION_NAME },\n);\n\nconst _redisIntegration = ((options = {}) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n exports._redisOptions = options;\n instrumentRedis();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [redis](https://www.npmjs.com/package/redis) and\n * [ioredis](https://www.npmjs.com/package/ioredis) libraries.\n *\n * For more information, see the [`redisIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/redis/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.redisIntegration()],\n * });\n * ```\n */\nconst redisIntegration = core.defineIntegration(_redisIntegration);\n\nexports.cacheResponseHook = cacheResponseHook;\nexports.instrumentRedis = instrumentRedis;\nexports.redisIntegration = redisIntegration;\n//# sourceMappingURL=redis.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcmVkaXMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsK0JBQStCLG1CQUFPLENBQUMsd05BQXdDO0FBQy9FLDZCQUE2QixtQkFBTyxDQUFDLGtOQUFzQztBQUMzRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1CO0FBQzVDLG1CQUFtQixtQkFBTyxDQUFDLDBJQUEyQjs7QUFFdEQ7O0FBRUE7QUFDQSxxQkFBcUI7O0FBRXJCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixrRkFBa0Y7QUFDM0c7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsNkRBQTZELGlCQUFpQjtBQUM5RTtBQUNBO0FBQ0EsR0FBRztBQUNILENBQUM7O0FBRUQsaUVBQWlFLGlCQUFpQjtBQUNsRjtBQUNBO0FBQ0EsR0FBRztBQUNILENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHdDQUF3QztBQUN4QyxHQUFHO0FBQ0gsSUFBSSxzQkFBc0I7QUFDMUI7O0FBRUEsd0NBQXdDO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBLE1BQU0scUJBQXFCO0FBQzNCO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLHlCQUF5QjtBQUN6Qix1QkFBdUI7QUFDdkIsd0JBQXdCO0FBQ3hCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL3JlZGlzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25Jb3JlZGlzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWlvcmVkaXMnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvblJlZGlzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLXJlZGlzJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCByZWRpc0NhY2hlID0gcmVxdWlyZSgnLi4vLi4vdXRpbHMvcmVkaXNDYWNoZS5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ1JlZGlzJztcblxuLyogT25seSBleHBvcnRlZCBmb3IgdGVzdGluZyBwdXJwb3NlcyAqL1xuZXhwb3J0cy5fcmVkaXNPcHRpb25zID0ge307XG5cbi8qIE9ubHkgZXhwb3J0ZWQgZm9yIHRlc3RpbmcgcHVycG9zZXMgKi9cbmNvbnN0IGNhY2hlUmVzcG9uc2VIb29rID0gKFxuICBzcGFuLFxuICByZWRpc0NvbW1hbmQsXG4gIGNtZEFyZ3MsXG4gIHJlc3BvbnNlLFxuKSA9PiB7XG4gIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU4sICdhdXRvLmRiLm90ZWwucmVkaXMnKTtcblxuICBjb25zdCBzYWZlS2V5ID0gcmVkaXNDYWNoZS5nZXRDYWNoZUtleVNhZmVseShyZWRpc0NvbW1hbmQsIGNtZEFyZ3MpO1xuICBjb25zdCBjYWNoZU9wZXJhdGlvbiA9IHJlZGlzQ2FjaGUuZ2V0Q2FjaGVPcGVyYXRpb24ocmVkaXNDb21tYW5kKTtcblxuICBpZiAoXG4gICAgIXNhZmVLZXkgfHxcbiAgICAhY2FjaGVPcGVyYXRpb24gfHxcbiAgICAhZXhwb3J0cy5fcmVkaXNPcHRpb25zLmNhY2hlUHJlZml4ZXMgfHxcbiAgICAhcmVkaXNDYWNoZS5zaG91bGRDb25zaWRlckZvckNhY2hlKHJlZGlzQ29tbWFuZCwgc2FmZUtleSwgZXhwb3J0cy5fcmVkaXNPcHRpb25zLmNhY2hlUHJlZml4ZXMpXG4gICkge1xuICAgIC8vIG5vdCByZWxldmFudCBmb3IgY2FjaGVcbiAgICByZXR1cm47XG4gIH1cblxuICAvLyBvdGVsL2lvcmVkaXMgc2VlbXMgdG8gYmUgdXNpbmcgdGhlIG9sZCBzdGFuZGFyZCwgYXMgdGhlcmUgd2FzIGEgY2hhbmdlIHRvIHRob3NlIHBhcmFtczogaHR0cHM6Ly9naXRodWIuY29tL29wZW4tdGVsZW1ldHJ5L29wZW50ZWxlbWV0cnktc3BlY2lmaWNhdGlvbi9pc3N1ZXMvMzE5OVxuICAvLyBXZSBhcmUgdXNpbmcgcGFyYW1zIGJhc2VkIG9uIHRoZSBkb2NzOiBodHRwczovL29wZW50ZWxlbWV0cnkuaW8vZG9jcy9zcGVjcy9zZW1jb252L2F0dHJpYnV0ZXMtcmVnaXN0cnkvbmV0d29yay9cbiAgY29uc3QgbmV0d29ya1BlZXJBZGRyZXNzID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGFbJ25ldC5wZWVyLm5hbWUnXTtcbiAgY29uc3QgbmV0d29ya1BlZXJQb3J0ID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGFbJ25ldC5wZWVyLnBvcnQnXTtcbiAgaWYgKG5ldHdvcmtQZWVyUG9ydCAmJiBuZXR3b3JrUGVlckFkZHJlc3MpIHtcbiAgICBzcGFuLnNldEF0dHJpYnV0ZXMoeyAnbmV0d29yay5wZWVyLmFkZHJlc3MnOiBuZXR3b3JrUGVlckFkZHJlc3MsICduZXR3b3JrLnBlZXIucG9ydCc6IG5ldHdvcmtQZWVyUG9ydCB9KTtcbiAgfVxuXG4gIGNvbnN0IGNhY2hlSXRlbVNpemUgPSByZWRpc0NhY2hlLmNhbGN1bGF0ZUNhY2hlSXRlbVNpemUocmVzcG9uc2UpO1xuXG4gIGlmIChjYWNoZUl0ZW1TaXplKSB7XG4gICAgc3Bhbi5zZXRBdHRyaWJ1dGUoY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfQ0FDSEVfSVRFTV9TSVpFLCBjYWNoZUl0ZW1TaXplKTtcbiAgfVxuXG4gIGlmIChyZWRpc0NhY2hlLmlzSW5Db21tYW5kcyhyZWRpc0NhY2hlLkdFVF9DT01NQU5EUywgcmVkaXNDb21tYW5kKSAmJiBjYWNoZUl0ZW1TaXplICE9PSB1bmRlZmluZWQpIHtcbiAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9DQUNIRV9ISVQsIGNhY2hlSXRlbVNpemUgPiAwKTtcbiAgfVxuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF06IGNhY2hlT3BlcmF0aW9uLFxuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9DQUNIRV9LRVldOiBzYWZlS2V5LFxuICB9KTtcblxuICAvLyB0b2RvOiBjaGFuZ2UgdG8gc3RyaW5nW10gb25jZSBFQVAgc3VwcG9ydHMgaXRcbiAgY29uc3Qgc3BhbkRlc2NyaXB0aW9uID0gc2FmZUtleS5qb2luKCcsICcpO1xuXG4gIHNwYW4udXBkYXRlTmFtZShcbiAgICBleHBvcnRzLl9yZWRpc09wdGlvbnMubWF4Q2FjaGVLZXlMZW5ndGggPyBjb3JlLnRydW5jYXRlKHNwYW5EZXNjcmlwdGlvbiwgZXhwb3J0cy5fcmVkaXNPcHRpb25zLm1heENhY2hlS2V5TGVuZ3RoKSA6IHNwYW5EZXNjcmlwdGlvbixcbiAgKTtcbn07XG5cbmNvbnN0IGluc3RydW1lbnRJT1JlZGlzID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShgJHtJTlRFR1JBVElPTl9OQU1FfS5JT1JlZGlzYCwgKCkgPT4ge1xuICByZXR1cm4gbmV3IGluc3RydW1lbnRhdGlvbklvcmVkaXMuSU9SZWRpc0luc3RydW1lbnRhdGlvbih7XG4gICAgcmVzcG9uc2VIb29rOiBjYWNoZVJlc3BvbnNlSG9vayxcbiAgfSk7XG59KTtcblxuY29uc3QgaW5zdHJ1bWVudFJlZGlzTW9kdWxlID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShgJHtJTlRFR1JBVElPTl9OQU1FfS5SZWRpc2AsICgpID0+IHtcbiAgcmV0dXJuIG5ldyBpbnN0cnVtZW50YXRpb25SZWRpcy5SZWRpc0luc3RydW1lbnRhdGlvbih7XG4gICAgcmVzcG9uc2VIb29rOiBjYWNoZVJlc3BvbnNlSG9vayxcbiAgfSk7XG59KTtcblxuLyoqIFRvIGJlIGFibGUgdG8gcHJlbG9hZCBhbGwgUmVkaXMgT1RlbCBpbnN0cnVtZW50YXRpb25zIHdpdGgganVzdCBvbmUgSUQgKFwiUmVkaXNcIiksIGFsbCB0aGUgaW5zdHJ1bWVudGF0aW9ucyBhcmUgZ2VuZXJhdGVkIGluIHRoaXMgb25lIGZ1bmN0aW9uICAqL1xuY29uc3QgaW5zdHJ1bWVudFJlZGlzID0gT2JqZWN0LmFzc2lnbihcbiAgKCkgPT4ge1xuICAgIGluc3RydW1lbnRJT1JlZGlzKCk7XG4gICAgaW5zdHJ1bWVudFJlZGlzTW9kdWxlKCk7XG5cbiAgICAvLyB0b2RvOiBpbXBsZW1lbnQgdGhlbSBncmFkdWFsbHlcbiAgICAvLyBuZXcgTGVnYWN5UmVkaXNJbnN0cnVtZW50YXRpb24oe30pLFxuICB9LFxuICB7IGlkOiBJTlRFR1JBVElPTl9OQU1FIH0sXG4pO1xuXG5jb25zdCBfcmVkaXNJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBleHBvcnRzLl9yZWRpc09wdGlvbnMgPSBvcHRpb25zO1xuICAgICAgaW5zdHJ1bWVudFJlZGlzKCk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFtyZWRpc10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcmVkaXMpIGFuZFxuICogW2lvcmVkaXNdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2lvcmVkaXMpIGxpYnJhcmllcy5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYHJlZGlzSW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvcmVkaXMvKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogIGludGVncmF0aW9uczogW1NlbnRyeS5yZWRpc0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgcmVkaXNJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX3JlZGlzSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmNhY2hlUmVzcG9uc2VIb29rID0gY2FjaGVSZXNwb25zZUhvb2s7XG5leHBvcnRzLmluc3RydW1lbnRSZWRpcyA9IGluc3RydW1lbnRSZWRpcztcbmV4cG9ydHMucmVkaXNJbnRlZ3JhdGlvbiA9IHJlZGlzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1yZWRpcy5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationTedious = __webpack_require__(/*! @opentelemetry/instrumentation-tedious */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation-tedious@0.33.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-tedious/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst TEDIUS_INSTRUMENTED_METHODS = new Set([\n 'callProcedure',\n 'execSql',\n 'execSqlBatch',\n 'execBulkLoad',\n 'prepare',\n 'execute',\n]);\n\nconst INTEGRATION_NAME = 'Tedious';\n\nconst instrumentTedious = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationTedious.TediousInstrumentation({}));\n\nconst _tediousIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentTedious();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n instrumentationWrappedCallback?.(() =>\n client.on('spanStart', span => {\n const { description, data } = core.spanToJSON(span);\n // Tedius integration always set a span name and `db.system` attribute to `mssql`.\n if (!description || data['db.system'] !== 'mssql') {\n return;\n }\n\n const operation = description.split(' ')[0] || '';\n if (TEDIUS_INSTRUMENTED_METHODS.has(operation)) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.tedious');\n }\n }),\n );\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [tedious](https://www.npmjs.com/package/tedious) library.\n *\n * For more information, see the [`tediousIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/tedious/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.tediousIntegration()],\n * });\n * ```\n */\nconst tediousIntegration = core.defineIntegration(_tediousIntegration);\n\nexports.instrumentTedious = instrumentTedious;\nexports.tediousIntegration = tediousIntegration;\n//# sourceMappingURL=tedious.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdGVkaW91cy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSxzSUFBc0k7O0FBRXRJO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9CQUFvQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEseUJBQXlCO0FBQ3pCLDBCQUEwQjtBQUMxQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy90ZWRpb3VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25UZWRpb3VzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLXRlZGlvdXMnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgVEVESVVTX0lOU1RSVU1FTlRFRF9NRVRIT0RTID0gbmV3IFNldChbXG4gICdjYWxsUHJvY2VkdXJlJyxcbiAgJ2V4ZWNTcWwnLFxuICAnZXhlY1NxbEJhdGNoJyxcbiAgJ2V4ZWNCdWxrTG9hZCcsXG4gICdwcmVwYXJlJyxcbiAgJ2V4ZWN1dGUnLFxuXSk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnVGVkaW91cyc7XG5cbmNvbnN0IGluc3RydW1lbnRUZWRpb3VzID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShJTlRFR1JBVElPTl9OQU1FLCAoKSA9PiBuZXcgaW5zdHJ1bWVudGF0aW9uVGVkaW91cy5UZWRpb3VzSW5zdHJ1bWVudGF0aW9uKHt9KSk7XG5cbmNvbnN0IF90ZWRpb3VzSW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICBsZXQgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSBpbnN0cnVtZW50VGVkaW91cygpO1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrID0gbm9kZUNvcmUuaW5zdHJ1bWVudFdoZW5XcmFwcGVkKGluc3RydW1lbnRhdGlvbik7XG4gICAgfSxcblxuICAgIHNldHVwKGNsaWVudCkge1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrPy4oKCkgPT5cbiAgICAgICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCBzcGFuID0+IHtcbiAgICAgICAgICBjb25zdCB7IGRlc2NyaXB0aW9uLCBkYXRhIH0gPSBjb3JlLnNwYW5Ub0pTT04oc3Bhbik7XG4gICAgICAgICAgLy8gVGVkaXVzIGludGVncmF0aW9uIGFsd2F5cyBzZXQgYSBzcGFuIG5hbWUgYW5kIGBkYi5zeXN0ZW1gIGF0dHJpYnV0ZSB0byBgbXNzcWxgLlxuICAgICAgICAgIGlmICghZGVzY3JpcHRpb24gfHwgZGF0YVsnZGIuc3lzdGVtJ10gIT09ICdtc3NxbCcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBvcGVyYXRpb24gPSBkZXNjcmlwdGlvbi5zcGxpdCgnICcpWzBdIHx8ICcnO1xuICAgICAgICAgIGlmIChURURJVVNfSU5TVFJVTUVOVEVEX01FVEhPRFMuaGFzKG9wZXJhdGlvbikpIHtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU4sICdhdXRvLmRiLm90ZWwudGVkaW91cycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbdGVkaW91c10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvdGVkaW91cykgbGlicmFyeS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYHRlZGlvdXNJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy90ZWRpb3VzLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkudGVkaW91c0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgdGVkaW91c0ludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfdGVkaW91c0ludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50VGVkaW91cyA9IGluc3RydW1lbnRUZWRpb3VzO1xuZXhwb3J0cy50ZWRpb3VzSW50ZWdyYXRpb24gPSB0ZWRpb3VzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD10ZWRpb3VzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js ***!
\********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst INTEGRATION_NAME = 'VercelAI';\n\nexports.INTEGRATION_NAME = INTEGRATION_NAME;\n//# sourceMappingURL=constants.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvY29uc3RhbnRzLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFOztBQUVBLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy92ZXJjZWxhaS9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnVmVyY2VsQUknO1xuXG5leHBvcnRzLklOVEVHUkFUSU9OX05BTUUgPSBJTlRFR1JBVElPTl9OQU1FO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29uc3RhbnRzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js ***!
\****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js\");\n\nconst instrumentVercelAi = nodeCore.generateInstrumentOnce(constants.INTEGRATION_NAME, () => new instrumentation.SentryVercelAiInstrumentation({}));\n\n/**\n * Determines if the integration should be forced based on environment and package availability.\n * Returns true if the 'ai' package is available.\n */\nfunction shouldForceIntegration(client) {\n const modules = client.getIntegrationByName('Modules');\n return !!modules?.getModules?.()?.ai;\n}\n\nconst _vercelAIIntegration = ((options = {}) => {\n let instrumentation;\n\n return {\n name: constants.INTEGRATION_NAME,\n options,\n setupOnce() {\n instrumentation = instrumentVercelAi();\n },\n afterAllSetup(client) {\n // Auto-detect if we should force the integration when running with 'ai' package available\n // Note that this can only be detected if the 'Modules' integration is available, and running in CJS mode\n const shouldForce = options.force ?? shouldForceIntegration(client);\n\n if (shouldForce) {\n core.addVercelAiProcessors(client);\n } else {\n instrumentation?.callWhenPatched(() => core.addVercelAiProcessors(client));\n }\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [ai](https://www.npmjs.com/package/ai) library.\n * This integration is not enabled by default, you need to manually add it.\n *\n * For more information, see the [`ai` documentation](https://sdk.vercel.ai/docs/ai-sdk-core/telemetry).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.vercelAIIntegration()],\n * });\n * ```\n *\n * This integration adds tracing support to all `ai` function calls.\n * You need to opt-in to collecting spans for a specific call,\n * you can do so by setting `experimental_telemetry.isEnabled` to `true` in the first argument of the function call.\n *\n * ```javascript\n * const result = await generateText({\n * model: openai('gpt-4-turbo'),\n * experimental_telemetry: { isEnabled: true },\n * });\n * ```\n *\n * If you want to collect inputs and outputs for a specific call, you must specifically opt-in to each\n * function call by setting `experimental_telemetry.recordInputs` and `experimental_telemetry.recordOutputs`\n * to `true`.\n *\n * ```javascript\n * const result = await generateText({\n * model: openai('gpt-4-turbo'),\n * experimental_telemetry: { isEnabled: true, recordInputs: true, recordOutputs: true },\n * });\n */\nconst vercelAIIntegration = core.defineIntegration(_vercelAIIntegration);\n\nexports.instrumentVercelAi = instrumentVercelAi;\nexports.vercelAIIntegration = vercelAIIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvaW5kZXguanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxrQkFBa0IsbUJBQU8sQ0FBQyxzSkFBZ0I7QUFDMUMsd0JBQXdCLG1CQUFPLENBQUMsa0tBQXNCOztBQUV0RCxpSkFBaUo7O0FBRWpKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsMkNBQTJDO0FBQzNDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLGlCQUFpQjtBQUNoRCxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDBEQUEwRDtBQUN4RixJQUFJO0FBQ0o7QUFDQTs7QUFFQSwwQkFBMEI7QUFDMUIsMkJBQTJCO0FBQzNCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL3ZlcmNlbGFpL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBjb25zdGFudHMgPSByZXF1aXJlKCcuL2NvbnN0YW50cy5qcycpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnLi9pbnN0cnVtZW50YXRpb24uanMnKTtcblxuY29uc3QgaW5zdHJ1bWVudFZlcmNlbEFpID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShjb25zdGFudHMuSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbi5TZW50cnlWZXJjZWxBaUluc3RydW1lbnRhdGlvbih7fSkpO1xuXG4vKipcbiAqIERldGVybWluZXMgaWYgdGhlIGludGVncmF0aW9uIHNob3VsZCBiZSBmb3JjZWQgYmFzZWQgb24gZW52aXJvbm1lbnQgYW5kIHBhY2thZ2UgYXZhaWxhYmlsaXR5LlxuICogUmV0dXJucyB0cnVlIGlmIHRoZSAnYWknIHBhY2thZ2UgaXMgYXZhaWxhYmxlLlxuICovXG5mdW5jdGlvbiBzaG91bGRGb3JjZUludGVncmF0aW9uKGNsaWVudCkge1xuICBjb25zdCBtb2R1bGVzID0gY2xpZW50LmdldEludGVncmF0aW9uQnlOYW1lKCdNb2R1bGVzJyk7XG4gIHJldHVybiAhIW1vZHVsZXM/LmdldE1vZHVsZXM/LigpPy5haTtcbn1cblxuY29uc3QgX3ZlcmNlbEFJSW50ZWdyYXRpb24gPSAoKG9wdGlvbnMgPSB7fSkgPT4ge1xuICBsZXQgaW5zdHJ1bWVudGF0aW9uO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogY29uc3RhbnRzLklOVEVHUkFUSU9OX05BTUUsXG4gICAgb3B0aW9ucyxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50YXRpb24gPSBpbnN0cnVtZW50VmVyY2VsQWkoKTtcbiAgICB9LFxuICAgIGFmdGVyQWxsU2V0dXAoY2xpZW50KSB7XG4gICAgICAvLyBBdXRvLWRldGVjdCBpZiB3ZSBzaG91bGQgZm9yY2UgdGhlIGludGVncmF0aW9uIHdoZW4gcnVubmluZyB3aXRoICdhaScgcGFja2FnZSBhdmFpbGFibGVcbiAgICAgIC8vIE5vdGUgdGhhdCB0aGlzIGNhbiBvbmx5IGJlIGRldGVjdGVkIGlmIHRoZSAnTW9kdWxlcycgaW50ZWdyYXRpb24gaXMgYXZhaWxhYmxlLCBhbmQgcnVubmluZyBpbiBDSlMgbW9kZVxuICAgICAgY29uc3Qgc2hvdWxkRm9yY2UgPSBvcHRpb25zLmZvcmNlID8/IHNob3VsZEZvcmNlSW50ZWdyYXRpb24oY2xpZW50KTtcblxuICAgICAgaWYgKHNob3VsZEZvcmNlKSB7XG4gICAgICAgIGNvcmUuYWRkVmVyY2VsQWlQcm9jZXNzb3JzKGNsaWVudCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpbnN0cnVtZW50YXRpb24/LmNhbGxXaGVuUGF0Y2hlZCgoKSA9PiBjb3JlLmFkZFZlcmNlbEFpUHJvY2Vzc29ycyhjbGllbnQpKTtcbiAgICAgIH1cbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2FpXShodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9haSkgbGlicmFyeS5cbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgbm90IGVuYWJsZWQgYnkgZGVmYXVsdCwgeW91IG5lZWQgdG8gbWFudWFsbHkgYWRkIGl0LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgYWlgIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vc2RrLnZlcmNlbC5haS9kb2NzL2FpLXNkay1jb3JlL3RlbGVtZXRyeSkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkudmVyY2VsQUlJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogVGhpcyBpbnRlZ3JhdGlvbiBhZGRzIHRyYWNpbmcgc3VwcG9ydCB0byBhbGwgYGFpYCBmdW5jdGlvbiBjYWxscy5cbiAqIFlvdSBuZWVkIHRvIG9wdC1pbiB0byBjb2xsZWN0aW5nIHNwYW5zIGZvciBhIHNwZWNpZmljIGNhbGwsXG4gKiB5b3UgY2FuIGRvIHNvIGJ5IHNldHRpbmcgYGV4cGVyaW1lbnRhbF90ZWxlbWV0cnkuaXNFbmFibGVkYCB0byBgdHJ1ZWAgaW4gdGhlIGZpcnN0IGFyZ3VtZW50IG9mIHRoZSBmdW5jdGlvbiBjYWxsLlxuICpcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGdlbmVyYXRlVGV4dCh7XG4gKiAgIG1vZGVsOiBvcGVuYWkoJ2dwdC00LXR1cmJvJyksXG4gKiAgIGV4cGVyaW1lbnRhbF90ZWxlbWV0cnk6IHsgaXNFbmFibGVkOiB0cnVlIH0sXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIElmIHlvdSB3YW50IHRvIGNvbGxlY3QgaW5wdXRzIGFuZCBvdXRwdXRzIGZvciBhIHNwZWNpZmljIGNhbGwsIHlvdSBtdXN0IHNwZWNpZmljYWxseSBvcHQtaW4gdG8gZWFjaFxuICogZnVuY3Rpb24gY2FsbCBieSBzZXR0aW5nIGBleHBlcmltZW50YWxfdGVsZW1ldHJ5LnJlY29yZElucHV0c2AgYW5kIGBleHBlcmltZW50YWxfdGVsZW1ldHJ5LnJlY29yZE91dHB1dHNgXG4gKiB0byBgdHJ1ZWAuXG4gKlxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgcmVzdWx0ID0gYXdhaXQgZ2VuZXJhdGVUZXh0KHtcbiAqICBtb2RlbDogb3BlbmFpKCdncHQtNC10dXJibycpLFxuICogIGV4cGVyaW1lbnRhbF90ZWxlbWV0cnk6IHsgaXNFbmFibGVkOiB0cnVlLCByZWNvcmRJbnB1dHM6IHRydWUsIHJlY29yZE91dHB1dHM6IHRydWUgfSxcbiAqIH0pO1xuICovXG5jb25zdCB2ZXJjZWxBSUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfdmVyY2VsQUlJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudFZlcmNlbEFpID0gaW5zdHJ1bWVudFZlcmNlbEFpO1xuZXhwb3J0cy52ZXJjZWxBSUludGVncmF0aW9uID0gdmVyY2VsQUlJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js ***!
\**************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js\");\n\nconst SUPPORTED_VERSIONS = ['>=3.0.0 <7'];\n\n// List of patched methods\n// From: https://sdk.vercel.ai/docs/ai-sdk-core/telemetry#collected-data\nconst INSTRUMENTED_METHODS = [\n 'generateText',\n 'streamText',\n 'generateObject',\n 'streamObject',\n 'embed',\n 'embedMany',\n 'rerank',\n] ;\n\nfunction isToolError(obj) {\n if (typeof obj !== 'object' || obj === null) {\n return false;\n }\n\n const candidate = obj ;\n return (\n 'type' in candidate &&\n 'error' in candidate &&\n 'toolName' in candidate &&\n 'toolCallId' in candidate &&\n candidate.type === 'tool-error' &&\n candidate.error instanceof Error\n );\n}\n\n/**\n * Process tool call results: capture tool errors and clean up span context mappings.\n *\n * Error checking runs first (needs span context for linking), then cleanup removes all entries.\n * Tool errors are not rejected in Vercel AI V5 — they appear as metadata in the result content.\n */\nfunction processToolCallResults(result) {\n if (typeof result !== 'object' || result === null || !('content' in result)) {\n return;\n }\n\n const resultObj = result ;\n if (!Array.isArray(resultObj.content)) {\n return;\n }\n\n captureToolErrors(resultObj.content);\n cleanupToolCallSpanContexts(resultObj.content);\n}\n\nfunction captureToolErrors(content) {\n for (const item of content) {\n if (!isToolError(item)) {\n continue;\n }\n\n // Try to get the span context associated with this tool call ID\n const spanContext = core._INTERNAL_getSpanContextForToolCallId(item.toolCallId);\n\n if (spanContext) {\n // We have the span context, so link the error using span and trace IDs\n core.withScope(scope => {\n scope.setContext('trace', {\n trace_id: spanContext.traceId,\n span_id: spanContext.spanId,\n });\n\n scope.setTag('vercel.ai.tool.name', item.toolName);\n scope.setTag('vercel.ai.tool.callId', item.toolCallId);\n scope.setLevel('error');\n\n core.captureException(item.error, {\n mechanism: {\n type: 'auto.vercelai.otel',\n handled: false,\n },\n });\n });\n } else {\n // Fallback: capture without span linking\n core.withScope(scope => {\n scope.setTag('vercel.ai.tool.name', item.toolName);\n scope.setTag('vercel.ai.tool.callId', item.toolCallId);\n scope.setLevel('error');\n\n core.captureException(item.error, {\n mechanism: {\n type: 'auto.vercelai.otel',\n handled: false,\n },\n });\n });\n }\n }\n}\n\n/**\n * Remove span context entries for all completed tool calls in the content array.\n */\nfunction cleanupToolCallSpanContexts(content) {\n for (const item of content) {\n if (\n typeof item === 'object' &&\n item !== null &&\n 'toolCallId' in item &&\n typeof (item ).toolCallId === 'string'\n ) {\n core._INTERNAL_cleanupToolCallSpanContext((item ).toolCallId );\n }\n }\n}\n\n/**\n * Determines whether to record inputs and outputs for Vercel AI telemetry based on the configuration hierarchy.\n *\n * The order of precedence is:\n * 1. The vercel ai integration options\n * 2. The experimental_telemetry options in the vercel ai method calls\n * 3. When telemetry is explicitly enabled (isEnabled: true), default to recording\n * 4. Otherwise, use the sendDefaultPii option from client options\n */\nfunction determineRecordingSettings(\n integrationRecordingOptions,\n methodTelemetryOptions,\n telemetryExplicitlyEnabled,\n defaultRecordingEnabled,\n) {\n const recordInputs =\n integrationRecordingOptions?.recordInputs !== undefined\n ? integrationRecordingOptions.recordInputs\n : methodTelemetryOptions.recordInputs !== undefined\n ? methodTelemetryOptions.recordInputs\n : telemetryExplicitlyEnabled === true\n ? true // When telemetry is explicitly enabled, default to recording inputs\n : defaultRecordingEnabled;\n\n const recordOutputs =\n integrationRecordingOptions?.recordOutputs !== undefined\n ? integrationRecordingOptions.recordOutputs\n : methodTelemetryOptions.recordOutputs !== undefined\n ? methodTelemetryOptions.recordOutputs\n : telemetryExplicitlyEnabled === true\n ? true // When telemetry is explicitly enabled, default to recording inputs\n : defaultRecordingEnabled;\n\n return { recordInputs, recordOutputs };\n}\n\n/**\n * This detects is added by the Sentry Vercel AI Integration to detect if the integration should\n * be enabled.\n *\n * It also patches the `ai` module to enable Vercel AI telemetry automatically for all methods.\n */\nclass SentryVercelAiInstrumentation extends instrumentation.InstrumentationBase {\n __init() {this._isPatched = false;}\n __init2() {this._callbacks = [];}\n\n constructor(config = {}) {\n super('@sentry/instrumentation-vercel-ai', core.SDK_VERSION, config);SentryVercelAiInstrumentation.prototype.__init.call(this);SentryVercelAiInstrumentation.prototype.__init2.call(this); }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition('ai', SUPPORTED_VERSIONS, this._patch.bind(this));\n return module;\n }\n\n /**\n * Call the provided callback when the module is patched.\n * If it has already been patched, the callback will be called immediately.\n */\n callWhenPatched(callback) {\n if (this._isPatched) {\n callback();\n } else {\n this._callbacks.push(callback);\n }\n }\n\n /**\n * Patches module exports to enable Vercel AI telemetry.\n */\n _patch(moduleExports) {\n this._isPatched = true;\n\n this._callbacks.forEach(callback => callback());\n this._callbacks = [];\n\n const generatePatch = (originalMethod) => {\n return new Proxy(originalMethod, {\n apply: (target, thisArg, args) => {\n const existingExperimentalTelemetry = args[0].experimental_telemetry || {};\n const isEnabled = existingExperimentalTelemetry.isEnabled;\n\n const client = core.getClient();\n const integration = client?.getIntegrationByName(constants.INTEGRATION_NAME);\n const integrationOptions = integration?.options;\n const shouldRecordInputsAndOutputs = integration ? Boolean(client?.getOptions().sendDefaultPii) : false;\n\n const { recordInputs, recordOutputs } = determineRecordingSettings(\n integrationOptions,\n existingExperimentalTelemetry,\n isEnabled,\n shouldRecordInputsAndOutputs,\n );\n\n args[0].experimental_telemetry = {\n ...existingExperimentalTelemetry,\n isEnabled: isEnabled !== undefined ? isEnabled : true,\n recordInputs,\n recordOutputs,\n };\n\n return core.handleCallbackErrors(\n () => Reflect.apply(target, thisArg, args),\n error => {\n // This error bubbles up to unhandledrejection handler (if not handled before),\n // where we do not know the active span anymore\n // So to circumvent this, we set the active span on the error object\n // which is picked up by the unhandledrejection handler\n if (error && typeof error === 'object') {\n core.addNonEnumerableProperty(error, '_sentry_active_span', core.getActiveSpan());\n }\n },\n () => {},\n result => {\n processToolCallResults(result);\n },\n );\n },\n });\n };\n\n // Is this an ESM module?\n // https://tc39.es/ecma262/#sec-module-namespace-objects\n if (Object.prototype.toString.call(moduleExports) === '[object Module]') {\n // In ESM we take the usual route and just replace the exports we want to instrument\n for (const method of INSTRUMENTED_METHODS) {\n // Skip methods that don't exist in this version of the AI SDK (e.g., rerank was added in v6)\n if (moduleExports[method] != null) {\n moduleExports[method] = generatePatch(moduleExports[method]);\n }\n }\n\n return moduleExports;\n } else {\n // In CJS we can't replace the exports in the original module because they\n // don't have setters, so we create a new object with the same properties\n const patchedModuleExports = INSTRUMENTED_METHODS.reduce((acc, curr) => {\n // Skip methods that don't exist in this version of the AI SDK (e.g., rerank was added in v6)\n if (moduleExports[curr] != null) {\n acc[curr] = generatePatch(moduleExports[curr]);\n }\n return acc;\n }, {} );\n\n return { ...moduleExports, ...patchedModuleExports };\n }\n }\n}\n\nexports.SentryVercelAiInstrumentation = SentryVercelAiInstrumentation;\nexports.cleanupToolCallSpanContexts = cleanupToolCallSpanContexts;\nexports.determineRecordingSettings = determineRecordingSettings;\nexports.processToolCallResults = processToolCallResults;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvaW5zdHJ1bWVudGF0aW9uLmpzIiwibWFwcGluZ3MiOiJBQUFBLENBQUMsb0RBQW9ELHlDQUF5QywwQ0FBMEMsOENBQThDLG9EQUFvRCxtREFBbUQscURBQXFELGlCQUFpQjs7QUFFblcsd0JBQXdCLG1CQUFPLENBQUMsaU1BQWdDO0FBQ2hFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxrQkFBa0IsbUJBQU8sQ0FBQyxzSkFBZ0I7O0FBRTFDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTOztBQUVUO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWCxTQUFTO0FBQ1QsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYLFNBQVM7QUFDVCxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsV0FBVztBQUNYOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWM7O0FBRWQsMEJBQTBCO0FBQzFCLHlFQUF5RSwwREFBMEQ7O0FBRW5JO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxrQkFBa0IsOEJBQThCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLG9CQUFvQjtBQUNwQjtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxLQUFLOztBQUVaLGVBQWU7QUFDZjtBQUNBO0FBQ0E7O0FBRUEscUNBQXFDO0FBQ3JDLG1DQUFtQztBQUNuQyxrQ0FBa0M7QUFDbEMsOEJBQThCO0FBQzlCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL3ZlcmNlbGFpL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3QgY29uc3RhbnRzID0gcmVxdWlyZSgnLi9jb25zdGFudHMuanMnKTtcblxuY29uc3QgU1VQUE9SVEVEX1ZFUlNJT05TID0gWyc+PTMuMC4wIDw3J107XG5cbi8vIExpc3Qgb2YgcGF0Y2hlZCBtZXRob2RzXG4vLyBGcm9tOiBodHRwczovL3Nkay52ZXJjZWwuYWkvZG9jcy9haS1zZGstY29yZS90ZWxlbWV0cnkjY29sbGVjdGVkLWRhdGFcbmNvbnN0IElOU1RSVU1FTlRFRF9NRVRIT0RTID0gW1xuICAnZ2VuZXJhdGVUZXh0JyxcbiAgJ3N0cmVhbVRleHQnLFxuICAnZ2VuZXJhdGVPYmplY3QnLFxuICAnc3RyZWFtT2JqZWN0JyxcbiAgJ2VtYmVkJyxcbiAgJ2VtYmVkTWFueScsXG4gICdyZXJhbmsnLFxuXSA7XG5cbmZ1bmN0aW9uIGlzVG9vbEVycm9yKG9iaikge1xuICBpZiAodHlwZW9mIG9iaiAhPT0gJ29iamVjdCcgfHwgb2JqID09PSBudWxsKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgY2FuZGlkYXRlID0gb2JqIDtcbiAgcmV0dXJuIChcbiAgICAndHlwZScgaW4gY2FuZGlkYXRlICYmXG4gICAgJ2Vycm9yJyBpbiBjYW5kaWRhdGUgJiZcbiAgICAndG9vbE5hbWUnIGluIGNhbmRpZGF0ZSAmJlxuICAgICd0b29sQ2FsbElkJyBpbiBjYW5kaWRhdGUgJiZcbiAgICBjYW5kaWRhdGUudHlwZSA9PT0gJ3Rvb2wtZXJyb3InICYmXG4gICAgY2FuZGlkYXRlLmVycm9yIGluc3RhbmNlb2YgRXJyb3JcbiAgKTtcbn1cblxuLyoqXG4gKiBQcm9jZXNzIHRvb2wgY2FsbCByZXN1bHRzOiBjYXB0dXJlIHRvb2wgZXJyb3JzIGFuZCBjbGVhbiB1cCBzcGFuIGNvbnRleHQgbWFwcGluZ3MuXG4gKlxuICogRXJyb3IgY2hlY2tpbmcgcnVucyBmaXJzdCAobmVlZHMgc3BhbiBjb250ZXh0IGZvciBsaW5raW5nKSwgdGhlbiBjbGVhbnVwIHJlbW92ZXMgYWxsIGVudHJpZXMuXG4gKiBUb29sIGVycm9ycyBhcmUgbm90IHJlamVjdGVkIGluIFZlcmNlbCBBSSBWNSDigJQgdGhleSBhcHBlYXIgYXMgbWV0YWRhdGEgaW4gdGhlIHJlc3VsdCBjb250ZW50LlxuICovXG5mdW5jdGlvbiBwcm9jZXNzVG9vbENhbGxSZXN1bHRzKHJlc3VsdCkge1xuICBpZiAodHlwZW9mIHJlc3VsdCAhPT0gJ29iamVjdCcgfHwgcmVzdWx0ID09PSBudWxsIHx8ICEoJ2NvbnRlbnQnIGluIHJlc3VsdCkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCByZXN1bHRPYmogPSByZXN1bHQgO1xuICBpZiAoIUFycmF5LmlzQXJyYXkocmVzdWx0T2JqLmNvbnRlbnQpKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY2FwdHVyZVRvb2xFcnJvcnMocmVzdWx0T2JqLmNvbnRlbnQpO1xuICBjbGVhbnVwVG9vbENhbGxTcGFuQ29udGV4dHMocmVzdWx0T2JqLmNvbnRlbnQpO1xufVxuXG5mdW5jdGlvbiBjYXB0dXJlVG9vbEVycm9ycyhjb250ZW50KSB7XG4gIGZvciAoY29uc3QgaXRlbSBvZiBjb250ZW50KSB7XG4gICAgaWYgKCFpc1Rvb2xFcnJvcihpdGVtKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gVHJ5IHRvIGdldCB0aGUgc3BhbiBjb250ZXh0IGFzc29jaWF0ZWQgd2l0aCB0aGlzIHRvb2wgY2FsbCBJRFxuICAgIGNvbnN0IHNwYW5Db250ZXh0ID0gY29yZS5fSU5URVJOQUxfZ2V0U3BhbkNvbnRleHRGb3JUb29sQ2FsbElkKGl0ZW0udG9vbENhbGxJZCk7XG5cbiAgICBpZiAoc3BhbkNvbnRleHQpIHtcbiAgICAgIC8vIFdlIGhhdmUgdGhlIHNwYW4gY29udGV4dCwgc28gbGluayB0aGUgZXJyb3IgdXNpbmcgc3BhbiBhbmQgdHJhY2UgSURzXG4gICAgICBjb3JlLndpdGhTY29wZShzY29wZSA9PiB7XG4gICAgICAgIHNjb3BlLnNldENvbnRleHQoJ3RyYWNlJywge1xuICAgICAgICAgIHRyYWNlX2lkOiBzcGFuQ29udGV4dC50cmFjZUlkLFxuICAgICAgICAgIHNwYW5faWQ6IHNwYW5Db250ZXh0LnNwYW5JZCxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJjZWwuYWkudG9vbC5uYW1lJywgaXRlbS50b29sTmFtZSk7XG4gICAgICAgIHNjb3BlLnNldFRhZygndmVyY2VsLmFpLnRvb2wuY2FsbElkJywgaXRlbS50b29sQ2FsbElkKTtcbiAgICAgICAgc2NvcGUuc2V0TGV2ZWwoJ2Vycm9yJyk7XG5cbiAgICAgICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGl0ZW0uZXJyb3IsIHtcbiAgICAgICAgICBtZWNoYW5pc206IHtcbiAgICAgICAgICAgIHR5cGU6ICdhdXRvLnZlcmNlbGFpLm90ZWwnLFxuICAgICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRmFsbGJhY2s6IGNhcHR1cmUgd2l0aG91dCBzcGFuIGxpbmtpbmdcbiAgICAgIGNvcmUud2l0aFNjb3BlKHNjb3BlID0+IHtcbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJjZWwuYWkudG9vbC5uYW1lJywgaXRlbS50b29sTmFtZSk7XG4gICAgICAgIHNjb3BlLnNldFRhZygndmVyY2VsLmFpLnRvb2wuY2FsbElkJywgaXRlbS50b29sQ2FsbElkKTtcbiAgICAgICAgc2NvcGUuc2V0TGV2ZWwoJ2Vycm9yJyk7XG5cbiAgICAgICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGl0ZW0uZXJyb3IsIHtcbiAgICAgICAgICBtZWNoYW5pc206IHtcbiAgICAgICAgICAgIHR5cGU6ICdhdXRvLnZlcmNlbGFpLm90ZWwnLFxuICAgICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBSZW1vdmUgc3BhbiBjb250ZXh0IGVudHJpZXMgZm9yIGFsbCBjb21wbGV0ZWQgdG9vbCBjYWxscyBpbiB0aGUgY29udGVudCBhcnJheS5cbiAqL1xuZnVuY3Rpb24gY2xlYW51cFRvb2xDYWxsU3BhbkNvbnRleHRzKGNvbnRlbnQpIHtcbiAgZm9yIChjb25zdCBpdGVtIG9mIGNvbnRlbnQpIHtcbiAgICBpZiAoXG4gICAgICB0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcgJiZcbiAgICAgIGl0ZW0gIT09IG51bGwgJiZcbiAgICAgICd0b29sQ2FsbElkJyBpbiBpdGVtICYmXG4gICAgICB0eXBlb2YgKGl0ZW0gKS50b29sQ2FsbElkID09PSAnc3RyaW5nJ1xuICAgICkge1xuICAgICAgY29yZS5fSU5URVJOQUxfY2xlYW51cFRvb2xDYWxsU3BhbkNvbnRleHQoKGl0ZW0gKS50b29sQ2FsbElkICk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRvIHJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgZm9yIFZlcmNlbCBBSSB0ZWxlbWV0cnkgYmFzZWQgb24gdGhlIGNvbmZpZ3VyYXRpb24gaGllcmFyY2h5LlxuICpcbiAqIFRoZSBvcmRlciBvZiBwcmVjZWRlbmNlIGlzOlxuICogMS4gVGhlIHZlcmNlbCBhaSBpbnRlZ3JhdGlvbiBvcHRpb25zXG4gKiAyLiBUaGUgZXhwZXJpbWVudGFsX3RlbGVtZXRyeSBvcHRpb25zIGluIHRoZSB2ZXJjZWwgYWkgbWV0aG9kIGNhbGxzXG4gKiAzLiBXaGVuIHRlbGVtZXRyeSBpcyBleHBsaWNpdGx5IGVuYWJsZWQgKGlzRW5hYmxlZDogdHJ1ZSksIGRlZmF1bHQgdG8gcmVjb3JkaW5nXG4gKiA0LiBPdGhlcndpc2UsIHVzZSB0aGUgc2VuZERlZmF1bHRQaWkgb3B0aW9uIGZyb20gY2xpZW50IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gZGV0ZXJtaW5lUmVjb3JkaW5nU2V0dGluZ3MoXG4gIGludGVncmF0aW9uUmVjb3JkaW5nT3B0aW9ucyxcbiAgbWV0aG9kVGVsZW1ldHJ5T3B0aW9ucyxcbiAgdGVsZW1ldHJ5RXhwbGljaXRseUVuYWJsZWQsXG4gIGRlZmF1bHRSZWNvcmRpbmdFbmFibGVkLFxuKSB7XG4gIGNvbnN0IHJlY29yZElucHV0cyA9XG4gICAgaW50ZWdyYXRpb25SZWNvcmRpbmdPcHRpb25zPy5yZWNvcmRJbnB1dHMgIT09IHVuZGVmaW5lZFxuICAgICAgPyBpbnRlZ3JhdGlvblJlY29yZGluZ09wdGlvbnMucmVjb3JkSW5wdXRzXG4gICAgICA6IG1ldGhvZFRlbGVtZXRyeU9wdGlvbnMucmVjb3JkSW5wdXRzICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyBtZXRob2RUZWxlbWV0cnlPcHRpb25zLnJlY29yZElucHV0c1xuICAgICAgICA6IHRlbGVtZXRyeUV4cGxpY2l0bHlFbmFibGVkID09PSB0cnVlXG4gICAgICAgICAgPyB0cnVlIC8vIFdoZW4gdGVsZW1ldHJ5IGlzIGV4cGxpY2l0bHkgZW5hYmxlZCwgZGVmYXVsdCB0byByZWNvcmRpbmcgaW5wdXRzXG4gICAgICAgICAgOiBkZWZhdWx0UmVjb3JkaW5nRW5hYmxlZDtcblxuICBjb25zdCByZWNvcmRPdXRwdXRzID1cbiAgICBpbnRlZ3JhdGlvblJlY29yZGluZ09wdGlvbnM/LnJlY29yZE91dHB1dHMgIT09IHVuZGVmaW5lZFxuICAgICAgPyBpbnRlZ3JhdGlvblJlY29yZGluZ09wdGlvbnMucmVjb3JkT3V0cHV0c1xuICAgICAgOiBtZXRob2RUZWxlbWV0cnlPcHRpb25zLnJlY29yZE91dHB1dHMgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IG1ldGhvZFRlbGVtZXRyeU9wdGlvbnMucmVjb3JkT3V0cHV0c1xuICAgICAgICA6IHRlbGVtZXRyeUV4cGxpY2l0bHlFbmFibGVkID09PSB0cnVlXG4gICAgICAgICAgPyB0cnVlIC8vIFdoZW4gdGVsZW1ldHJ5IGlzIGV4cGxpY2l0bHkgZW5hYmxlZCwgZGVmYXVsdCB0byByZWNvcmRpbmcgaW5wdXRzXG4gICAgICAgICAgOiBkZWZhdWx0UmVjb3JkaW5nRW5hYmxlZDtcblxuICByZXR1cm4geyByZWNvcmRJbnB1dHMsIHJlY29yZE91dHB1dHMgfTtcbn1cblxuLyoqXG4gKiBUaGlzIGRldGVjdHMgaXMgYWRkZWQgYnkgdGhlIFNlbnRyeSBWZXJjZWwgQUkgSW50ZWdyYXRpb24gdG8gZGV0ZWN0IGlmIHRoZSBpbnRlZ3JhdGlvbiBzaG91bGRcbiAqIGJlIGVuYWJsZWQuXG4gKlxuICogSXQgYWxzbyBwYXRjaGVzIHRoZSBgYWlgIG1vZHVsZSB0byBlbmFibGUgVmVyY2VsIEFJIHRlbGVtZXRyeSBhdXRvbWF0aWNhbGx5IGZvciBhbGwgbWV0aG9kcy5cbiAqL1xuY2xhc3MgU2VudHJ5VmVyY2VsQWlJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBfX2luaXQoKSB7dGhpcy5faXNQYXRjaGVkID0gZmFsc2U7fVxuICAgX19pbml0MigpIHt0aGlzLl9jYWxsYmFja3MgPSBbXTt9XG5cbiAgIGNvbnN0cnVjdG9yKGNvbmZpZyA9IHt9KSB7XG4gICAgc3VwZXIoJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLXZlcmNlbC1haScsIGNvcmUuU0RLX1ZFUlNJT04sIGNvbmZpZyk7U2VudHJ5VmVyY2VsQWlJbnN0cnVtZW50YXRpb24ucHJvdG90eXBlLl9faW5pdC5jYWxsKHRoaXMpO1NlbnRyeVZlcmNlbEFpSW5zdHJ1bWVudGF0aW9uLnByb3RvdHlwZS5fX2luaXQyLmNhbGwodGhpcyk7ICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oJ2FpJywgU1VQUE9SVEVEX1ZFUlNJT05TLCB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhlIHByb3ZpZGVkIGNhbGxiYWNrIHdoZW4gdGhlIG1vZHVsZSBpcyBwYXRjaGVkLlxuICAgKiBJZiBpdCBoYXMgYWxyZWFkeSBiZWVuIHBhdGNoZWQsIHRoZSBjYWxsYmFjayB3aWxsIGJlIGNhbGxlZCBpbW1lZGlhdGVseS5cbiAgICovXG4gICBjYWxsV2hlblBhdGNoZWQoY2FsbGJhY2spIHtcbiAgICBpZiAodGhpcy5faXNQYXRjaGVkKSB7XG4gICAgICBjYWxsYmFjaygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jYWxsYmFja3MucHVzaChjYWxsYmFjayk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgbW9kdWxlIGV4cG9ydHMgdG8gZW5hYmxlIFZlcmNlbCBBSSB0ZWxlbWV0cnkuXG4gICAqL1xuICAgX3BhdGNoKG1vZHVsZUV4cG9ydHMpIHtcbiAgICB0aGlzLl9pc1BhdGNoZWQgPSB0cnVlO1xuXG4gICAgdGhpcy5fY2FsbGJhY2tzLmZvckVhY2goY2FsbGJhY2sgPT4gY2FsbGJhY2soKSk7XG4gICAgdGhpcy5fY2FsbGJhY2tzID0gW107XG5cbiAgICBjb25zdCBnZW5lcmF0ZVBhdGNoID0gKG9yaWdpbmFsTWV0aG9kKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb3h5KG9yaWdpbmFsTWV0aG9kLCB7XG4gICAgICAgIGFwcGx5OiAodGFyZ2V0LCB0aGlzQXJnLCBhcmdzKSA9PiB7XG4gICAgICAgICAgY29uc3QgZXhpc3RpbmdFeHBlcmltZW50YWxUZWxlbWV0cnkgPSBhcmdzWzBdLmV4cGVyaW1lbnRhbF90ZWxlbWV0cnkgfHwge307XG4gICAgICAgICAgY29uc3QgaXNFbmFibGVkID0gZXhpc3RpbmdFeHBlcmltZW50YWxUZWxlbWV0cnkuaXNFbmFibGVkO1xuXG4gICAgICAgICAgY29uc3QgY2xpZW50ID0gY29yZS5nZXRDbGllbnQoKTtcbiAgICAgICAgICBjb25zdCBpbnRlZ3JhdGlvbiA9IGNsaWVudD8uZ2V0SW50ZWdyYXRpb25CeU5hbWUoY29uc3RhbnRzLklOVEVHUkFUSU9OX05BTUUpO1xuICAgICAgICAgIGNvbnN0IGludGVncmF0aW9uT3B0aW9ucyA9IGludGVncmF0aW9uPy5vcHRpb25zO1xuICAgICAgICAgIGNvbnN0IHNob3VsZFJlY29yZElucHV0c0FuZE91dHB1dHMgPSBpbnRlZ3JhdGlvbiA/IEJvb2xlYW4oY2xpZW50Py5nZXRPcHRpb25zKCkuc2VuZERlZmF1bHRQaWkpIDogZmFsc2U7XG5cbiAgICAgICAgICBjb25zdCB7IHJlY29yZElucHV0cywgcmVjb3JkT3V0cHV0cyB9ID0gZGV0ZXJtaW5lUmVjb3JkaW5nU2V0dGluZ3MoXG4gICAgICAgICAgICBpbnRlZ3JhdGlvbk9wdGlvbnMsXG4gICAgICAgICAgICBleGlzdGluZ0V4cGVyaW1lbnRhbFRlbGVtZXRyeSxcbiAgICAgICAgICAgIGlzRW5hYmxlZCxcbiAgICAgICAgICAgIHNob3VsZFJlY29yZElucHV0c0FuZE91dHB1dHMsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGFyZ3NbMF0uZXhwZXJpbWVudGFsX3RlbGVtZXRyeSA9IHtcbiAgICAgICAgICAgIC4uLmV4aXN0aW5nRXhwZXJpbWVudGFsVGVsZW1ldHJ5LFxuICAgICAgICAgICAgaXNFbmFibGVkOiBpc0VuYWJsZWQgIT09IHVuZGVmaW5lZCA/IGlzRW5hYmxlZCA6IHRydWUsXG4gICAgICAgICAgICByZWNvcmRJbnB1dHMsXG4gICAgICAgICAgICByZWNvcmRPdXRwdXRzLFxuICAgICAgICAgIH07XG5cbiAgICAgICAgICByZXR1cm4gY29yZS5oYW5kbGVDYWxsYmFja0Vycm9ycyhcbiAgICAgICAgICAgICgpID0+IFJlZmxlY3QuYXBwbHkodGFyZ2V0LCB0aGlzQXJnLCBhcmdzKSxcbiAgICAgICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgLy8gVGhpcyBlcnJvciBidWJibGVzIHVwIHRvIHVuaGFuZGxlZHJlamVjdGlvbiBoYW5kbGVyIChpZiBub3QgaGFuZGxlZCBiZWZvcmUpLFxuICAgICAgICAgICAgICAvLyB3aGVyZSB3ZSBkbyBub3Qga25vdyB0aGUgYWN0aXZlIHNwYW4gYW55bW9yZVxuICAgICAgICAgICAgICAvLyBTbyB0byBjaXJjdW12ZW50IHRoaXMsIHdlIHNldCB0aGUgYWN0aXZlIHNwYW4gb24gdGhlIGVycm9yIG9iamVjdFxuICAgICAgICAgICAgICAvLyB3aGljaCBpcyBwaWNrZWQgdXAgYnkgdGhlIHVuaGFuZGxlZHJlamVjdGlvbiBoYW5kbGVyXG4gICAgICAgICAgICAgIGlmIChlcnJvciAmJiB0eXBlb2YgZXJyb3IgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgY29yZS5hZGROb25FbnVtZXJhYmxlUHJvcGVydHkoZXJyb3IsICdfc2VudHJ5X2FjdGl2ZV9zcGFuJywgY29yZS5nZXRBY3RpdmVTcGFuKCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICByZXN1bHQgPT4ge1xuICAgICAgICAgICAgICBwcm9jZXNzVG9vbENhbGxSZXN1bHRzKHJlc3VsdCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgLy8gSXMgdGhpcyBhbiBFU00gbW9kdWxlP1xuICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtbW9kdWxlLW5hbWVzcGFjZS1vYmplY3RzXG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChtb2R1bGVFeHBvcnRzKSA9PT0gJ1tvYmplY3QgTW9kdWxlXScpIHtcbiAgICAgIC8vIEluIEVTTSB3ZSB0YWtlIHRoZSB1c3VhbCByb3V0ZSBhbmQganVzdCByZXBsYWNlIHRoZSBleHBvcnRzIHdlIHdhbnQgdG8gaW5zdHJ1bWVudFxuICAgICAgZm9yIChjb25zdCBtZXRob2Qgb2YgSU5TVFJVTUVOVEVEX01FVEhPRFMpIHtcbiAgICAgICAgLy8gU2tpcCBtZXRob2RzIHRoYXQgZG9uJ3QgZXhpc3QgaW4gdGhpcyB2ZXJzaW9uIG9mIHRoZSBBSSBTREsgKGUuZy4sIHJlcmFuayB3YXMgYWRkZWQgaW4gdjYpXG4gICAgICAgIGlmIChtb2R1bGVFeHBvcnRzW21ldGhvZF0gIT0gbnVsbCkge1xuICAgICAgICAgIG1vZHVsZUV4cG9ydHNbbWV0aG9kXSA9IGdlbmVyYXRlUGF0Y2gobW9kdWxlRXhwb3J0c1ttZXRob2RdKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbW9kdWxlRXhwb3J0cztcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSW4gQ0pTIHdlIGNhbid0IHJlcGxhY2UgdGhlIGV4cG9ydHMgaW4gdGhlIG9yaWdpbmFsIG1vZHVsZSBiZWNhdXNlIHRoZXlcbiAgICAgIC8vIGRvbid0IGhhdmUgc2V0dGVycywgc28gd2UgY3JlYXRlIGEgbmV3IG9iamVjdCB3aXRoIHRoZSBzYW1lIHByb3BlcnRpZXNcbiAgICAgIGNvbnN0IHBhdGNoZWRNb2R1bGVFeHBvcnRzID0gSU5TVFJVTUVOVEVEX01FVEhPRFMucmVkdWNlKChhY2MsIGN1cnIpID0+IHtcbiAgICAgICAgLy8gU2tpcCBtZXRob2RzIHRoYXQgZG9uJ3QgZXhpc3QgaW4gdGhpcyB2ZXJzaW9uIG9mIHRoZSBBSSBTREsgKGUuZy4sIHJlcmFuayB3YXMgYWRkZWQgaW4gdjYpXG4gICAgICAgIGlmIChtb2R1bGVFeHBvcnRzW2N1cnJdICE9IG51bGwpIHtcbiAgICAgICAgICBhY2NbY3Vycl0gPSBnZW5lcmF0ZVBhdGNoKG1vZHVsZUV4cG9ydHNbY3Vycl0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCB7fSApO1xuXG4gICAgICByZXR1cm4geyAuLi5tb2R1bGVFeHBvcnRzLCAuLi5wYXRjaGVkTW9kdWxlRXhwb3J0cyB9O1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnRzLlNlbnRyeVZlcmNlbEFpSW5zdHJ1bWVudGF0aW9uID0gU2VudHJ5VmVyY2VsQWlJbnN0cnVtZW50YXRpb247XG5leHBvcnRzLmNsZWFudXBUb29sQ2FsbFNwYW5Db250ZXh0cyA9IGNsZWFudXBUb29sQ2FsbFNwYW5Db250ZXh0cztcbmV4cG9ydHMuZGV0ZXJtaW5lUmVjb3JkaW5nU2V0dGluZ3MgPSBkZXRlcm1pbmVSZWNvcmRpbmdTZXR0aW5ncztcbmV4cG9ydHMucHJvY2Vzc1Rvb2xDYWxsUmVzdWx0cyA9IHByb2Nlc3NUb29sQ2FsbFJlc3VsdHM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst http = __webpack_require__(/*! ../integrations/http.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\");\nconst nodeFetch = __webpack_require__(/*! ../integrations/node-fetch.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js\");\nconst index = __webpack_require__(/*! ../integrations/tracing/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\");\nconst initOtel = __webpack_require__(/*! ./initOtel.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js\");\n\n/**\n * Get default integrations, excluding performance.\n */\nfunction getDefaultIntegrationsWithoutPerformance() {\n const nodeCoreIntegrations = nodeCore.getDefaultIntegrations();\n\n // Filter out the node-core HTTP and NodeFetch integrations and replace them with Node SDK's composite versions\n return nodeCoreIntegrations\n .filter(integration => integration.name !== 'Http' && integration.name !== 'NodeFetch')\n .concat(http.httpIntegration(), nodeFetch.nativeNodeFetchIntegration());\n}\n\n/** Get the default integrations for the Node SDK. */\nfunction getDefaultIntegrations(options) {\n return [\n ...getDefaultIntegrationsWithoutPerformance(),\n // We only add performance integrations if tracing is enabled\n // Note that this means that without tracing enabled, e.g. `expressIntegration()` will not be added\n // This means that generally request isolation will work (because that is done by httpIntegration)\n // But `transactionName` will not be set automatically\n ...(core.hasSpansEnabled(options) ? index.getAutoPerformanceIntegrations() : []),\n ];\n}\n\n/**\n * Initialize Sentry for Node.\n */\nfunction init(options = {}) {\n return _init(options, getDefaultIntegrations);\n}\n\n/**\n * Internal initialization function.\n */\nfunction _init(\n options = {},\n getDefaultIntegrationsImpl,\n) {\n core.applySdkMetadata(options, 'node');\n\n const client = nodeCore.init({\n ...options,\n // Only use Node SDK defaults if none provided\n defaultIntegrations: options.defaultIntegrations ?? getDefaultIntegrationsImpl(options),\n });\n\n // Add Node SDK specific OpenTelemetry setup\n if (client && !options.skipOpenTelemetrySetup) {\n initOtel.initOpenTelemetry(client, {\n spanProcessors: options.openTelemetrySpanProcessors,\n });\n nodeCore.validateOpenTelemetrySetup();\n }\n\n return client;\n}\n\n/**\n * Initialize Sentry for Node, without any integrations added by default.\n */\nfunction initWithoutDefaultIntegrations(options = {}) {\n return _init(options, () => []);\n}\n\nexports.getDefaultIntegrations = getDefaultIntegrations;\nexports.getDefaultIntegrationsWithoutPerformance = getDefaultIntegrationsWithoutPerformance;\nexports.init = init;\nexports.initWithoutDefaultIntegrations = initWithoutDefaultIntegrations;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvc2RrL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsYUFBYSxtQkFBTyxDQUFDLHlJQUF5QjtBQUM5QyxrQkFBa0IsbUJBQU8sQ0FBQyxxSkFBK0I7QUFDekQsY0FBYyxtQkFBTyxDQUFDLDJKQUFrQztBQUN4RCxpQkFBaUIsbUJBQU8sQ0FBQywwSEFBZTs7QUFFeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esb0RBQW9EO0FBQ3BEO0FBQ0E7O0FBRUEsOEJBQThCO0FBQzlCLGdEQUFnRDtBQUNoRCxZQUFZO0FBQ1osc0NBQXNDO0FBQ3RDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL3Nkay9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuY29uc3QgaHR0cCA9IHJlcXVpcmUoJy4uL2ludGVncmF0aW9ucy9odHRwLmpzJyk7XG5jb25zdCBub2RlRmV0Y2ggPSByZXF1aXJlKCcuLi9pbnRlZ3JhdGlvbnMvbm9kZS1mZXRjaC5qcycpO1xuY29uc3QgaW5kZXggPSByZXF1aXJlKCcuLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9pbmRleC5qcycpO1xuY29uc3QgaW5pdE90ZWwgPSByZXF1aXJlKCcuL2luaXRPdGVsLmpzJyk7XG5cbi8qKlxuICogR2V0IGRlZmF1bHQgaW50ZWdyYXRpb25zLCBleGNsdWRpbmcgcGVyZm9ybWFuY2UuXG4gKi9cbmZ1bmN0aW9uIGdldERlZmF1bHRJbnRlZ3JhdGlvbnNXaXRob3V0UGVyZm9ybWFuY2UoKSB7XG4gIGNvbnN0IG5vZGVDb3JlSW50ZWdyYXRpb25zID0gbm9kZUNvcmUuZ2V0RGVmYXVsdEludGVncmF0aW9ucygpO1xuXG4gIC8vIEZpbHRlciBvdXQgdGhlIG5vZGUtY29yZSBIVFRQIGFuZCBOb2RlRmV0Y2ggaW50ZWdyYXRpb25zIGFuZCByZXBsYWNlIHRoZW0gd2l0aCBOb2RlIFNESydzIGNvbXBvc2l0ZSB2ZXJzaW9uc1xuICByZXR1cm4gbm9kZUNvcmVJbnRlZ3JhdGlvbnNcbiAgICAuZmlsdGVyKGludGVncmF0aW9uID0+IGludGVncmF0aW9uLm5hbWUgIT09ICdIdHRwJyAmJiBpbnRlZ3JhdGlvbi5uYW1lICE9PSAnTm9kZUZldGNoJylcbiAgICAuY29uY2F0KGh0dHAuaHR0cEludGVncmF0aW9uKCksIG5vZGVGZXRjaC5uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbigpKTtcbn1cblxuLyoqIEdldCB0aGUgZGVmYXVsdCBpbnRlZ3JhdGlvbnMgZm9yIHRoZSBOb2RlIFNESy4gKi9cbmZ1bmN0aW9uIGdldERlZmF1bHRJbnRlZ3JhdGlvbnMob3B0aW9ucykge1xuICByZXR1cm4gW1xuICAgIC4uLmdldERlZmF1bHRJbnRlZ3JhdGlvbnNXaXRob3V0UGVyZm9ybWFuY2UoKSxcbiAgICAvLyBXZSBvbmx5IGFkZCBwZXJmb3JtYW5jZSBpbnRlZ3JhdGlvbnMgaWYgdHJhY2luZyBpcyBlbmFibGVkXG4gICAgLy8gTm90ZSB0aGF0IHRoaXMgbWVhbnMgdGhhdCB3aXRob3V0IHRyYWNpbmcgZW5hYmxlZCwgZS5nLiBgZXhwcmVzc0ludGVncmF0aW9uKClgIHdpbGwgbm90IGJlIGFkZGVkXG4gICAgLy8gVGhpcyBtZWFucyB0aGF0IGdlbmVyYWxseSByZXF1ZXN0IGlzb2xhdGlvbiB3aWxsIHdvcmsgKGJlY2F1c2UgdGhhdCBpcyBkb25lIGJ5IGh0dHBJbnRlZ3JhdGlvbilcbiAgICAvLyBCdXQgYHRyYW5zYWN0aW9uTmFtZWAgd2lsbCBub3QgYmUgc2V0IGF1dG9tYXRpY2FsbHlcbiAgICAuLi4oY29yZS5oYXNTcGFuc0VuYWJsZWQob3B0aW9ucykgPyBpbmRleC5nZXRBdXRvUGVyZm9ybWFuY2VJbnRlZ3JhdGlvbnMoKSA6IFtdKSxcbiAgXTtcbn1cblxuLyoqXG4gKiBJbml0aWFsaXplIFNlbnRyeSBmb3IgTm9kZS5cbiAqL1xuZnVuY3Rpb24gaW5pdChvcHRpb25zID0ge30pIHtcbiAgcmV0dXJuIF9pbml0KG9wdGlvbnMsIGdldERlZmF1bHRJbnRlZ3JhdGlvbnMpO1xufVxuXG4vKipcbiAqIEludGVybmFsIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLlxuICovXG5mdW5jdGlvbiBfaW5pdChcbiAgb3B0aW9ucyA9IHt9LFxuICBnZXREZWZhdWx0SW50ZWdyYXRpb25zSW1wbCxcbikge1xuICBjb3JlLmFwcGx5U2RrTWV0YWRhdGEob3B0aW9ucywgJ25vZGUnKTtcblxuICBjb25zdCBjbGllbnQgPSBub2RlQ29yZS5pbml0KHtcbiAgICAuLi5vcHRpb25zLFxuICAgIC8vIE9ubHkgdXNlIE5vZGUgU0RLIGRlZmF1bHRzIGlmIG5vbmUgcHJvdmlkZWRcbiAgICBkZWZhdWx0SW50ZWdyYXRpb25zOiBvcHRpb25zLmRlZmF1bHRJbnRlZ3JhdGlvbnMgPz8gZ2V0RGVmYXVsdEludGVncmF0aW9uc0ltcGwob3B0aW9ucyksXG4gIH0pO1xuXG4gIC8vIEFkZCBOb2RlIFNESyBzcGVjaWZpYyBPcGVuVGVsZW1ldHJ5IHNldHVwXG4gIGlmIChjbGllbnQgJiYgIW9wdGlvbnMuc2tpcE9wZW5UZWxlbWV0cnlTZXR1cCkge1xuICAgIGluaXRPdGVsLmluaXRPcGVuVGVsZW1ldHJ5KGNsaWVudCwge1xuICAgICAgc3BhblByb2Nlc3NvcnM6IG9wdGlvbnMub3BlblRlbGVtZXRyeVNwYW5Qcm9jZXNzb3JzLFxuICAgIH0pO1xuICAgIG5vZGVDb3JlLnZhbGlkYXRlT3BlblRlbGVtZXRyeVNldHVwKCk7XG4gIH1cblxuICByZXR1cm4gY2xpZW50O1xufVxuXG4vKipcbiAqIEluaXRpYWxpemUgU2VudHJ5IGZvciBOb2RlLCB3aXRob3V0IGFueSBpbnRlZ3JhdGlvbnMgYWRkZWQgYnkgZGVmYXVsdC5cbiAqL1xuZnVuY3Rpb24gaW5pdFdpdGhvdXREZWZhdWx0SW50ZWdyYXRpb25zKG9wdGlvbnMgPSB7fSkge1xuICByZXR1cm4gX2luaXQob3B0aW9ucywgKCkgPT4gW10pO1xufVxuXG5leHBvcnRzLmdldERlZmF1bHRJbnRlZ3JhdGlvbnMgPSBnZXREZWZhdWx0SW50ZWdyYXRpb25zO1xuZXhwb3J0cy5nZXREZWZhdWx0SW50ZWdyYXRpb25zV2l0aG91dFBlcmZvcm1hbmNlID0gZ2V0RGVmYXVsdEludGVncmF0aW9uc1dpdGhvdXRQZXJmb3JtYW5jZTtcbmV4cG9ydHMuaW5pdCA9IGluaXQ7XG5leHBvcnRzLmluaXRXaXRob3V0RGVmYXVsdEludGVncmF0aW9ucyA9IGluaXRXaXRob3V0RGVmYXVsdEludGVncmF0aW9ucztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst resources = __webpack_require__(/*! @opentelemetry/resources */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+resources@2.6.1_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/resources/build/esm/index.js\");\nconst sdkTraceBase = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+sdk-trace-base@2.6.1_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/sdk-trace-base/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(rsc)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(rsc)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(rsc)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst opentelemetry = __webpack_require__(/*! @sentry/opentelemetry */ \"(rsc)/./node_modules/.pnpm/@sentry+opentelemetry@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hoo_70f539428297572a9e3752da9c315982/node_modules/@sentry/opentelemetry/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../debug-build.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\nconst index = __webpack_require__(/*! ../integrations/tracing/index.js */ \"(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\");\n\n// About 277h - this must fit into new Array(len)!\nconst MAX_MAX_SPAN_WAIT_DURATION = 1000000;\n\n/**\n * Initialize OpenTelemetry for Node.\n */\nfunction initOpenTelemetry(client, options = {}) {\n if (client.getOptions().debug) {\n nodeCore.setupOpenTelemetryLogger();\n }\n\n const [provider, asyncLocalStorageLookup] = setupOtel(client, options);\n client.traceProvider = provider;\n client.asyncLocalStorageLookup = asyncLocalStorageLookup;\n}\n\n/**\n * Preload OpenTelemetry for Node.\n * This can be used to preload instrumentation early, but set up Sentry later.\n * By preloading the OTEL instrumentation wrapping still happens early enough that everything works.\n */\nfunction preloadOpenTelemetry(options = {}) {\n const { debug } = options;\n\n if (debug) {\n core.debug.enable();\n }\n\n nodeCore.initializeEsmLoader();\n\n // These are all integrations that we need to pre-load to ensure they are set up before any other code runs\n getPreloadMethods(options.integrations).forEach(fn => {\n fn();\n\n if (debug) {\n core.debug.log(`[Sentry] Preloaded ${fn.id} instrumentation`);\n }\n });\n}\n\nfunction getPreloadMethods(integrationNames) {\n const instruments = index.getOpenTelemetryInstrumentationToPreload();\n\n if (!integrationNames) {\n return instruments;\n }\n\n // We match exact matches of instrumentation, but also match prefixes, e.g. \"Fastify.v5\" will match \"Fastify\"\n return instruments.filter(instrumentation => {\n const id = instrumentation.id;\n return integrationNames.some(integrationName => id === integrationName || id.startsWith(`${integrationName}.`));\n });\n}\n\n/** Just exported for tests. */\nfunction setupOtel(\n client,\n options = {},\n) {\n // Create and configure NodeTracerProvider\n const provider = new sdkTraceBase.BasicTracerProvider({\n sampler: new opentelemetry.SentrySampler(client),\n resource: resources.defaultResource().merge(\n resources.resourceFromAttributes({\n [semanticConventions.ATTR_SERVICE_NAME]: 'node',\n // eslint-disable-next-line deprecation/deprecation\n [semanticConventions.SEMRESATTRS_SERVICE_NAMESPACE]: 'sentry',\n [semanticConventions.ATTR_SERVICE_VERSION]: core.SDK_VERSION,\n }),\n ),\n forceFlushTimeoutMillis: 500,\n spanProcessors: [\n new opentelemetry.SentrySpanProcessor({\n timeout: _clampSpanProcessorTimeout(client.getOptions().maxSpanWaitDuration),\n }),\n ...(options.spanProcessors || []),\n ],\n });\n\n // Register as globals\n api.trace.setGlobalTracerProvider(provider);\n api.propagation.setGlobalPropagator(new opentelemetry.SentryPropagator());\n\n const ctxManager = new nodeCore.SentryContextManager();\n api.context.setGlobalContextManager(ctxManager);\n\n return [provider, ctxManager.getAsyncLocalStorageLookup()];\n}\n\n/** Just exported for tests. */\nfunction _clampSpanProcessorTimeout(maxSpanWaitDuration) {\n if (maxSpanWaitDuration == null) {\n return undefined;\n }\n\n // We guard for a max. value here, because we create an array with this length\n // So if this value is too large, this would fail\n if (maxSpanWaitDuration > MAX_MAX_SPAN_WAIT_DURATION) {\n debugBuild.DEBUG_BUILD &&\n core.debug.warn(`\\`maxSpanWaitDuration\\` is too high, using the maximum value of ${MAX_MAX_SPAN_WAIT_DURATION}`);\n return MAX_MAX_SPAN_WAIT_DURATION;\n } else if (maxSpanWaitDuration <= 0 || Number.isNaN(maxSpanWaitDuration)) {\n debugBuild.DEBUG_BUILD && core.debug.warn('`maxSpanWaitDuration` must be a positive number, using default value instead.');\n return undefined;\n }\n\n return maxSpanWaitDuration;\n}\n\nexports._clampSpanProcessorTimeout = _clampSpanProcessorTimeout;\nexports.initOpenTelemetry = initOpenTelemetry;\nexports.preloadOpenTelemetry = preloadOpenTelemetry;\nexports.setupOtel = setupOtel;\n//# sourceMappingURL=initOtel.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvc2RrL2luaXRPdGVsLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLFlBQVksbUJBQU8sQ0FBQyxrSUFBb0I7QUFDeEMsa0JBQWtCLG1CQUFPLENBQUMsNktBQTBCO0FBQ3BELHFCQUFxQixtQkFBTyxDQUFDLDRMQUErQjtBQUM1RCw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxzQkFBc0IsbUJBQU8sQ0FBQyx3T0FBdUI7QUFDckQsbUJBQW1CLG1CQUFPLENBQUMsNkhBQW1CO0FBQzlDLGNBQWMsbUJBQU8sQ0FBQywySkFBa0M7O0FBRXhEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsK0NBQStDO0FBQy9DO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDO0FBQzFDLFVBQVUsUUFBUTs7QUFFbEI7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDJDQUEyQyxPQUFPO0FBQ2xEO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLCtGQUErRixnQkFBZ0I7QUFDL0csR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlGQUF5RiwyQkFBMkI7QUFDcEg7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsa0NBQWtDO0FBQ2xDLHlCQUF5QjtBQUN6Qiw0QkFBNEI7QUFDNUIsaUJBQWlCO0FBQ2pCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL3Nkay9pbml0T3RlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCByZXNvdXJjZXMgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9yZXNvdXJjZXMnKTtcbmNvbnN0IHNka1RyYWNlQmFzZSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3Nkay10cmFjZS1iYXNlJyk7XG5jb25zdCBzZW1hbnRpY0NvbnZlbnRpb25zID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvc2VtYW50aWMtY29udmVudGlvbnMnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IG9wZW50ZWxlbWV0cnkgPSByZXF1aXJlKCdAc2VudHJ5L29wZW50ZWxlbWV0cnknKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi9kZWJ1Zy1idWlsZC5qcycpO1xuY29uc3QgaW5kZXggPSByZXF1aXJlKCcuLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9pbmRleC5qcycpO1xuXG4vLyBBYm91dCAyNzdoIC0gdGhpcyBtdXN0IGZpdCBpbnRvIG5ldyBBcnJheShsZW4pIVxuY29uc3QgTUFYX01BWF9TUEFOX1dBSVRfRFVSQVRJT04gPSAxMDAwMDAwO1xuXG4vKipcbiAqIEluaXRpYWxpemUgT3BlblRlbGVtZXRyeSBmb3IgTm9kZS5cbiAqL1xuZnVuY3Rpb24gaW5pdE9wZW5UZWxlbWV0cnkoY2xpZW50LCBvcHRpb25zID0ge30pIHtcbiAgaWYgKGNsaWVudC5nZXRPcHRpb25zKCkuZGVidWcpIHtcbiAgICBub2RlQ29yZS5zZXR1cE9wZW5UZWxlbWV0cnlMb2dnZXIoKTtcbiAgfVxuXG4gIGNvbnN0IFtwcm92aWRlciwgYXN5bmNMb2NhbFN0b3JhZ2VMb29rdXBdID0gc2V0dXBPdGVsKGNsaWVudCwgb3B0aW9ucyk7XG4gIGNsaWVudC50cmFjZVByb3ZpZGVyID0gcHJvdmlkZXI7XG4gIGNsaWVudC5hc3luY0xvY2FsU3RvcmFnZUxvb2t1cCA9IGFzeW5jTG9jYWxTdG9yYWdlTG9va3VwO1xufVxuXG4vKipcbiAqIFByZWxvYWQgT3BlblRlbGVtZXRyeSBmb3IgTm9kZS5cbiAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gcHJlbG9hZCBpbnN0cnVtZW50YXRpb24gZWFybHksIGJ1dCBzZXQgdXAgU2VudHJ5IGxhdGVyLlxuICogQnkgcHJlbG9hZGluZyB0aGUgT1RFTCBpbnN0cnVtZW50YXRpb24gd3JhcHBpbmcgc3RpbGwgaGFwcGVucyBlYXJseSBlbm91Z2ggdGhhdCBldmVyeXRoaW5nIHdvcmtzLlxuICovXG5mdW5jdGlvbiBwcmVsb2FkT3BlblRlbGVtZXRyeShvcHRpb25zID0ge30pIHtcbiAgY29uc3QgeyBkZWJ1ZyB9ID0gb3B0aW9ucztcblxuICBpZiAoZGVidWcpIHtcbiAgICBjb3JlLmRlYnVnLmVuYWJsZSgpO1xuICB9XG5cbiAgbm9kZUNvcmUuaW5pdGlhbGl6ZUVzbUxvYWRlcigpO1xuXG4gIC8vIFRoZXNlIGFyZSBhbGwgaW50ZWdyYXRpb25zIHRoYXQgd2UgbmVlZCB0byBwcmUtbG9hZCB0byBlbnN1cmUgdGhleSBhcmUgc2V0IHVwIGJlZm9yZSBhbnkgb3RoZXIgY29kZSBydW5zXG4gIGdldFByZWxvYWRNZXRob2RzKG9wdGlvbnMuaW50ZWdyYXRpb25zKS5mb3JFYWNoKGZuID0+IHtcbiAgICBmbigpO1xuXG4gICAgaWYgKGRlYnVnKSB7XG4gICAgICBjb3JlLmRlYnVnLmxvZyhgW1NlbnRyeV0gUHJlbG9hZGVkICR7Zm4uaWR9IGluc3RydW1lbnRhdGlvbmApO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldFByZWxvYWRNZXRob2RzKGludGVncmF0aW9uTmFtZXMpIHtcbiAgY29uc3QgaW5zdHJ1bWVudHMgPSBpbmRleC5nZXRPcGVuVGVsZW1ldHJ5SW5zdHJ1bWVudGF0aW9uVG9QcmVsb2FkKCk7XG5cbiAgaWYgKCFpbnRlZ3JhdGlvbk5hbWVzKSB7XG4gICAgcmV0dXJuIGluc3RydW1lbnRzO1xuICB9XG5cbiAgLy8gV2UgbWF0Y2ggZXhhY3QgbWF0Y2hlcyBvZiBpbnN0cnVtZW50YXRpb24sIGJ1dCBhbHNvIG1hdGNoIHByZWZpeGVzLCBlLmcuIFwiRmFzdGlmeS52NVwiIHdpbGwgbWF0Y2ggXCJGYXN0aWZ5XCJcbiAgcmV0dXJuIGluc3RydW1lbnRzLmZpbHRlcihpbnN0cnVtZW50YXRpb24gPT4ge1xuICAgIGNvbnN0IGlkID0gaW5zdHJ1bWVudGF0aW9uLmlkO1xuICAgIHJldHVybiBpbnRlZ3JhdGlvbk5hbWVzLnNvbWUoaW50ZWdyYXRpb25OYW1lID0+IGlkID09PSBpbnRlZ3JhdGlvbk5hbWUgfHwgaWQuc3RhcnRzV2l0aChgJHtpbnRlZ3JhdGlvbk5hbWV9LmApKTtcbiAgfSk7XG59XG5cbi8qKiBKdXN0IGV4cG9ydGVkIGZvciB0ZXN0cy4gKi9cbmZ1bmN0aW9uIHNldHVwT3RlbChcbiAgY2xpZW50LFxuICBvcHRpb25zID0ge30sXG4pIHtcbiAgLy8gQ3JlYXRlIGFuZCBjb25maWd1cmUgTm9kZVRyYWNlclByb3ZpZGVyXG4gIGNvbnN0IHByb3ZpZGVyID0gbmV3IHNka1RyYWNlQmFzZS5CYXNpY1RyYWNlclByb3ZpZGVyKHtcbiAgICBzYW1wbGVyOiBuZXcgb3BlbnRlbGVtZXRyeS5TZW50cnlTYW1wbGVyKGNsaWVudCksXG4gICAgcmVzb3VyY2U6IHJlc291cmNlcy5kZWZhdWx0UmVzb3VyY2UoKS5tZXJnZShcbiAgICAgIHJlc291cmNlcy5yZXNvdXJjZUZyb21BdHRyaWJ1dGVzKHtcbiAgICAgICAgW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9TRVJWSUNFX05BTUVdOiAnbm9kZScsXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkZXByZWNhdGlvbi9kZXByZWNhdGlvblxuICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5TRU1SRVNBVFRSU19TRVJWSUNFX05BTUVTUEFDRV06ICdzZW50cnknLFxuICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX1NFUlZJQ0VfVkVSU0lPTl06IGNvcmUuU0RLX1ZFUlNJT04sXG4gICAgICB9KSxcbiAgICApLFxuICAgIGZvcmNlRmx1c2hUaW1lb3V0TWlsbGlzOiA1MDAsXG4gICAgc3BhblByb2Nlc3NvcnM6IFtcbiAgICAgIG5ldyBvcGVudGVsZW1ldHJ5LlNlbnRyeVNwYW5Qcm9jZXNzb3Ioe1xuICAgICAgICB0aW1lb3V0OiBfY2xhbXBTcGFuUHJvY2Vzc29yVGltZW91dChjbGllbnQuZ2V0T3B0aW9ucygpLm1heFNwYW5XYWl0RHVyYXRpb24pLFxuICAgICAgfSksXG4gICAgICAuLi4ob3B0aW9ucy5zcGFuUHJvY2Vzc29ycyB8fCBbXSksXG4gICAgXSxcbiAgfSk7XG5cbiAgLy8gUmVnaXN0ZXIgYXMgZ2xvYmFsc1xuICBhcGkudHJhY2Uuc2V0R2xvYmFsVHJhY2VyUHJvdmlkZXIocHJvdmlkZXIpO1xuICBhcGkucHJvcGFnYXRpb24uc2V0R2xvYmFsUHJvcGFnYXRvcihuZXcgb3BlbnRlbGVtZXRyeS5TZW50cnlQcm9wYWdhdG9yKCkpO1xuXG4gIGNvbnN0IGN0eE1hbmFnZXIgPSBuZXcgbm9kZUNvcmUuU2VudHJ5Q29udGV4dE1hbmFnZXIoKTtcbiAgYXBpLmNvbnRleHQuc2V0R2xvYmFsQ29udGV4dE1hbmFnZXIoY3R4TWFuYWdlcik7XG5cbiAgcmV0dXJuIFtwcm92aWRlciwgY3R4TWFuYWdlci5nZXRBc3luY0xvY2FsU3RvcmFnZUxvb2t1cCgpXTtcbn1cblxuLyoqIEp1c3QgZXhwb3J0ZWQgZm9yIHRlc3RzLiAqL1xuZnVuY3Rpb24gX2NsYW1wU3BhblByb2Nlc3NvclRpbWVvdXQobWF4U3BhbldhaXREdXJhdGlvbikge1xuICBpZiAobWF4U3BhbldhaXREdXJhdGlvbiA9PSBudWxsKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8vIFdlIGd1YXJkIGZvciBhIG1heC4gdmFsdWUgaGVyZSwgYmVjYXVzZSB3ZSBjcmVhdGUgYW4gYXJyYXkgd2l0aCB0aGlzIGxlbmd0aFxuICAvLyBTbyBpZiB0aGlzIHZhbHVlIGlzIHRvbyBsYXJnZSwgdGhpcyB3b3VsZCBmYWlsXG4gIGlmIChtYXhTcGFuV2FpdER1cmF0aW9uID4gTUFYX01BWF9TUEFOX1dBSVRfRFVSQVRJT04pIHtcbiAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmXG4gICAgICBjb3JlLmRlYnVnLndhcm4oYFxcYG1heFNwYW5XYWl0RHVyYXRpb25cXGAgaXMgdG9vIGhpZ2gsIHVzaW5nIHRoZSBtYXhpbXVtIHZhbHVlIG9mICR7TUFYX01BWF9TUEFOX1dBSVRfRFVSQVRJT059YCk7XG4gICAgcmV0dXJuIE1BWF9NQVhfU1BBTl9XQUlUX0RVUkFUSU9OO1xuICB9IGVsc2UgaWYgKG1heFNwYW5XYWl0RHVyYXRpb24gPD0gMCB8fCBOdW1iZXIuaXNOYU4obWF4U3BhbldhaXREdXJhdGlvbikpIHtcbiAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcud2FybignYG1heFNwYW5XYWl0RHVyYXRpb25gIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXIsIHVzaW5nIGRlZmF1bHQgdmFsdWUgaW5zdGVhZC4nKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIG1heFNwYW5XYWl0RHVyYXRpb247XG59XG5cbmV4cG9ydHMuX2NsYW1wU3BhblByb2Nlc3NvclRpbWVvdXQgPSBfY2xhbXBTcGFuUHJvY2Vzc29yVGltZW91dDtcbmV4cG9ydHMuaW5pdE9wZW5UZWxlbWV0cnkgPSBpbml0T3BlblRlbGVtZXRyeTtcbmV4cG9ydHMucHJlbG9hZE9wZW5UZWxlbWV0cnkgPSBwcmVsb2FkT3BlblRlbGVtZXRyeTtcbmV4cG9ydHMuc2V0dXBPdGVsID0gc2V0dXBPdGVsO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5pdE90ZWwuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js\n");
/***/ }),
/***/ "(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst SINGLE_ARG_COMMANDS = ['get', 'set', 'setex'];\n\nconst GET_COMMANDS = ['get', 'mget'];\nconst SET_COMMANDS = ['set', 'setex'];\n// todo: del, expire\n\n/** Checks if a given command is in the list of redis commands.\n * Useful because commands can come in lowercase or uppercase (depending on the library). */\nfunction isInCommands(redisCommands, command) {\n return redisCommands.includes(command.toLowerCase());\n}\n\n/** Determine cache operation based on redis statement */\nfunction getCacheOperation(\n command,\n) {\n if (isInCommands(GET_COMMANDS, command)) {\n return 'cache.get';\n } else if (isInCommands(SET_COMMANDS, command)) {\n return 'cache.put';\n } else {\n return undefined;\n }\n}\n\nfunction keyHasPrefix(key, prefixes) {\n return prefixes.some(prefix => key.startsWith(prefix));\n}\n\n/** Safely converts a redis key to a string (comma-separated if there are multiple keys) */\nfunction getCacheKeySafely(redisCommand, cmdArgs) {\n try {\n if (cmdArgs.length === 0) {\n return undefined;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const processArg = (arg) => {\n if (typeof arg === 'string' || typeof arg === 'number' || Buffer.isBuffer(arg)) {\n return [arg.toString()];\n } else if (Array.isArray(arg)) {\n return flatten(arg.map(arg => processArg(arg)));\n } else {\n return ['<unknown>'];\n }\n };\n\n const firstArg = cmdArgs[0];\n if (isInCommands(SINGLE_ARG_COMMANDS, redisCommand) && firstArg != null) {\n return processArg(firstArg);\n }\n\n return flatten(cmdArgs.map(arg => processArg(arg)));\n } catch {\n return undefined;\n }\n}\n\n/** Determines whether a redis operation should be considered as \"cache operation\" by checking if a key is prefixed.\n * We only support certain commands (such as 'set', 'get', 'mget'). */\nfunction shouldConsiderForCache(redisCommand, keys, prefixes) {\n if (!getCacheOperation(redisCommand)) {\n return false;\n }\n\n for (const key of keys) {\n if (keyHasPrefix(key, prefixes)) {\n return true;\n }\n }\n return false;\n}\n\n/** Calculates size based on the cache response value */\nfunction calculateCacheItemSize(response) {\n const getSize = (value) => {\n try {\n if (Buffer.isBuffer(value)) return value.byteLength;\n else if (typeof value === 'string') return value.length;\n else if (typeof value === 'number') return value.toString().length;\n else if (value === null || value === undefined) return 0;\n return JSON.stringify(value).length;\n } catch {\n return undefined;\n }\n };\n\n return Array.isArray(response)\n ? response.reduce((acc, curr) => {\n const size = getSize(curr);\n return typeof size === 'number' ? (acc !== undefined ? acc + size : size) : acc;\n }, 0)\n : getSize(response);\n}\n\nfunction flatten(input) {\n const result = [];\n\n const flattenHelper = (input) => {\n input.forEach((el) => {\n if (Array.isArray(el)) {\n flattenHelper(el);\n } else {\n result.push(el);\n }\n });\n };\n\n flattenHelper(input);\n return result;\n}\n\nexports.GET_COMMANDS = GET_COMMANDS;\nexports.SET_COMMANDS = SET_COMMANDS;\nexports.calculateCacheItemSize = calculateCacheItemSize;\nexports.getCacheKeySafely = getCacheKeySafely;\nexports.getCacheOperation = getCacheOperation;\nexports.isInCommands = isInCommands;\nexports.shouldConsiderForCache = shouldConsiderForCache;\n//# sourceMappingURL=redisCache.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvdXRpbHMvcmVkaXNDYWNoZS5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsb0JBQW9CO0FBQ3BCLG9CQUFvQjtBQUNwQiw4QkFBOEI7QUFDOUIseUJBQXlCO0FBQ3pCLHlCQUF5QjtBQUN6QixvQkFBb0I7QUFDcEIsOEJBQThCO0FBQzlCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL3V0aWxzL3JlZGlzQ2FjaGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IFNJTkdMRV9BUkdfQ09NTUFORFMgPSBbJ2dldCcsICdzZXQnLCAnc2V0ZXgnXTtcblxuY29uc3QgR0VUX0NPTU1BTkRTID0gWydnZXQnLCAnbWdldCddO1xuY29uc3QgU0VUX0NPTU1BTkRTID0gWydzZXQnLCAnc2V0ZXgnXTtcbi8vIHRvZG86IGRlbCwgZXhwaXJlXG5cbi8qKiBDaGVja3MgaWYgYSBnaXZlbiBjb21tYW5kIGlzIGluIHRoZSBsaXN0IG9mIHJlZGlzIGNvbW1hbmRzLlxuICogIFVzZWZ1bCBiZWNhdXNlIGNvbW1hbmRzIGNhbiBjb21lIGluIGxvd2VyY2FzZSBvciB1cHBlcmNhc2UgKGRlcGVuZGluZyBvbiB0aGUgbGlicmFyeSkuICovXG5mdW5jdGlvbiBpc0luQ29tbWFuZHMocmVkaXNDb21tYW5kcywgY29tbWFuZCkge1xuICByZXR1cm4gcmVkaXNDb21tYW5kcy5pbmNsdWRlcyhjb21tYW5kLnRvTG93ZXJDYXNlKCkpO1xufVxuXG4vKiogRGV0ZXJtaW5lIGNhY2hlIG9wZXJhdGlvbiBiYXNlZCBvbiByZWRpcyBzdGF0ZW1lbnQgKi9cbmZ1bmN0aW9uIGdldENhY2hlT3BlcmF0aW9uKFxuICBjb21tYW5kLFxuKSB7XG4gIGlmIChpc0luQ29tbWFuZHMoR0VUX0NPTU1BTkRTLCBjb21tYW5kKSkge1xuICAgIHJldHVybiAnY2FjaGUuZ2V0JztcbiAgfSBlbHNlIGlmIChpc0luQ29tbWFuZHMoU0VUX0NPTU1BTkRTLCBjb21tYW5kKSkge1xuICAgIHJldHVybiAnY2FjaGUucHV0JztcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmZ1bmN0aW9uIGtleUhhc1ByZWZpeChrZXksIHByZWZpeGVzKSB7XG4gIHJldHVybiBwcmVmaXhlcy5zb21lKHByZWZpeCA9PiBrZXkuc3RhcnRzV2l0aChwcmVmaXgpKTtcbn1cblxuLyoqIFNhZmVseSBjb252ZXJ0cyBhIHJlZGlzIGtleSB0byBhIHN0cmluZyAoY29tbWEtc2VwYXJhdGVkIGlmIHRoZXJlIGFyZSBtdWx0aXBsZSBrZXlzKSAqL1xuZnVuY3Rpb24gZ2V0Q2FjaGVLZXlTYWZlbHkocmVkaXNDb21tYW5kLCBjbWRBcmdzKSB7XG4gIHRyeSB7XG4gICAgaWYgKGNtZEFyZ3MubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgY29uc3QgcHJvY2Vzc0FyZyA9IChhcmcpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgYXJnID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgYXJnID09PSAnbnVtYmVyJyB8fCBCdWZmZXIuaXNCdWZmZXIoYXJnKSkge1xuICAgICAgICByZXR1cm4gW2FyZy50b1N0cmluZygpXTtcbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShhcmcpKSB7XG4gICAgICAgIHJldHVybiBmbGF0dGVuKGFyZy5tYXAoYXJnID0+IHByb2Nlc3NBcmcoYXJnKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFsnPHVua25vd24+J107XG4gICAgICB9XG4gICAgfTtcblxuICAgIGNvbnN0IGZpcnN0QXJnID0gY21kQXJnc1swXTtcbiAgICBpZiAoaXNJbkNvbW1hbmRzKFNJTkdMRV9BUkdfQ09NTUFORFMsIHJlZGlzQ29tbWFuZCkgJiYgZmlyc3RBcmcgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHByb2Nlc3NBcmcoZmlyc3RBcmcpO1xuICAgIH1cblxuICAgIHJldHVybiBmbGF0dGVuKGNtZEFyZ3MubWFwKGFyZyA9PiBwcm9jZXNzQXJnKGFyZykpKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKiogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgcmVkaXMgb3BlcmF0aW9uIHNob3VsZCBiZSBjb25zaWRlcmVkIGFzIFwiY2FjaGUgb3BlcmF0aW9uXCIgYnkgY2hlY2tpbmcgaWYgYSBrZXkgaXMgcHJlZml4ZWQuXG4gKiAgV2Ugb25seSBzdXBwb3J0IGNlcnRhaW4gY29tbWFuZHMgKHN1Y2ggYXMgJ3NldCcsICdnZXQnLCAnbWdldCcpLiAqL1xuZnVuY3Rpb24gc2hvdWxkQ29uc2lkZXJGb3JDYWNoZShyZWRpc0NvbW1hbmQsIGtleXMsIHByZWZpeGVzKSB7XG4gIGlmICghZ2V0Q2FjaGVPcGVyYXRpb24ocmVkaXNDb21tYW5kKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICBpZiAoa2V5SGFzUHJlZml4KGtleSwgcHJlZml4ZXMpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKiogQ2FsY3VsYXRlcyBzaXplIGJhc2VkIG9uIHRoZSBjYWNoZSByZXNwb25zZSB2YWx1ZSAqL1xuZnVuY3Rpb24gY2FsY3VsYXRlQ2FjaGVJdGVtU2l6ZShyZXNwb25zZSkge1xuICBjb25zdCBnZXRTaXplID0gKHZhbHVlKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGlmIChCdWZmZXIuaXNCdWZmZXIodmFsdWUpKSByZXR1cm4gdmFsdWUuYnl0ZUxlbmd0aDtcbiAgICAgIGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gICAgICBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSByZXR1cm4gdmFsdWUudG9TdHJpbmcoKS5sZW5ndGg7XG4gICAgICBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gMDtcbiAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkubGVuZ3RoO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkocmVzcG9uc2UpXG4gICAgPyByZXNwb25zZS5yZWR1Y2UoKGFjYywgY3VycikgPT4ge1xuICAgICAgICBjb25zdCBzaXplID0gZ2V0U2l6ZShjdXJyKTtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBzaXplID09PSAnbnVtYmVyJyA/IChhY2MgIT09IHVuZGVmaW5lZCA/IGFjYyArIHNpemUgOiBzaXplKSA6IGFjYztcbiAgICAgIH0sIDApXG4gICAgOiBnZXRTaXplKHJlc3BvbnNlKTtcbn1cblxuZnVuY3Rpb24gZmxhdHRlbihpbnB1dCkge1xuICBjb25zdCByZXN1bHQgPSBbXTtcblxuICBjb25zdCBmbGF0dGVuSGVscGVyID0gKGlucHV0KSA9PiB7XG4gICAgaW5wdXQuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGVsKSkge1xuICAgICAgICBmbGF0dGVuSGVscGVyKGVsKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKGVsKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBmbGF0dGVuSGVscGVyKGlucHV0KTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZXhwb3J0cy5HRVRfQ09NTUFORFMgPSBHRVRfQ09NTUFORFM7XG5leHBvcnRzLlNFVF9DT01NQU5EUyA9IFNFVF9DT01NQU5EUztcbmV4cG9ydHMuY2FsY3VsYXRlQ2FjaGVJdGVtU2l6ZSA9IGNhbGN1bGF0ZUNhY2hlSXRlbVNpemU7XG5leHBvcnRzLmdldENhY2hlS2V5U2FmZWx5ID0gZ2V0Q2FjaGVLZXlTYWZlbHk7XG5leHBvcnRzLmdldENhY2hlT3BlcmF0aW9uID0gZ2V0Q2FjaGVPcGVyYXRpb247XG5leHBvcnRzLmlzSW5Db21tYW5kcyA9IGlzSW5Db21tYW5kcztcbmV4cG9ydHMuc2hvdWxkQ29uc2lkZXJGb3JDYWNoZSA9IHNob3VsZENvbnNpZGVyRm9yQ2FjaGU7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1yZWRpc0NhY2hlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js":
/*!****************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js ***!
\****************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\n/**\n * This serves as a build time flag that will be true by default, but false in non-debug builds or if users replace `__SENTRY_DEBUG__` in their generated code.\n *\n * ATTENTION: This constant must never cross package boundaries (i.e. be exported) to guarantee that it can be used for tree shaking.\n */\nconst DEBUG_BUILD = (typeof __SENTRY_DEBUG__ === 'undefined' || __SENTRY_DEBUG__);\n\nexports.DEBUG_BUILD = DEBUG_BUILD;\n//# sourceMappingURL=debug-build.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvZGVidWctYnVpbGQuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLG1CQUFtQjtBQUNuQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9kZWJ1Zy1idWlsZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuLyoqXG4gKiBUaGlzIHNlcnZlcyBhcyBhIGJ1aWxkIHRpbWUgZmxhZyB0aGF0IHdpbGwgYmUgdHJ1ZSBieSBkZWZhdWx0LCBidXQgZmFsc2UgaW4gbm9uLWRlYnVnIGJ1aWxkcyBvciBpZiB1c2VycyByZXBsYWNlIGBfX1NFTlRSWV9ERUJVR19fYCBpbiB0aGVpciBnZW5lcmF0ZWQgY29kZS5cbiAqXG4gKiBBVFRFTlRJT046IFRoaXMgY29uc3RhbnQgbXVzdCBuZXZlciBjcm9zcyBwYWNrYWdlIGJvdW5kYXJpZXMgKGkuZS4gYmUgZXhwb3J0ZWQpIHRvIGd1YXJhbnRlZSB0aGF0IGl0IGNhbiBiZSB1c2VkIGZvciB0cmVlIHNoYWtpbmcuXG4gKi9cbmNvbnN0IERFQlVHX0JVSUxEID0gKHR5cGVvZiBfX1NFTlRSWV9ERUJVR19fID09PSAndW5kZWZpbmVkJyB8fCBfX1NFTlRSWV9ERUJVR19fKTtcblxuZXhwb3J0cy5ERUJVR19CVUlMRCA9IERFQlVHX0JVSUxEO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGVidWctYnVpbGQuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/index.js":
/*!**********************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/index.js ***!
\**********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst http = __webpack_require__(/*! ./integrations/http.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\");\nconst nodeFetch = __webpack_require__(/*! ./integrations/node-fetch.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js\");\nconst fs = __webpack_require__(/*! ./integrations/fs.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js\");\nconst express = __webpack_require__(/*! ./integrations/tracing/express.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js\");\nconst index$1 = __webpack_require__(/*! ./integrations/tracing/fastify/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js\");\nconst graphql = __webpack_require__(/*! ./integrations/tracing/graphql.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js\");\nconst kafka = __webpack_require__(/*! ./integrations/tracing/kafka.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js\");\nconst lrumemoizer = __webpack_require__(/*! ./integrations/tracing/lrumemoizer.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js\");\nconst mongo = __webpack_require__(/*! ./integrations/tracing/mongo.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js\");\nconst mongoose = __webpack_require__(/*! ./integrations/tracing/mongoose.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js\");\nconst mysql = __webpack_require__(/*! ./integrations/tracing/mysql.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js\");\nconst mysql2 = __webpack_require__(/*! ./integrations/tracing/mysql2.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js\");\nconst redis = __webpack_require__(/*! ./integrations/tracing/redis.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js\");\nconst postgres = __webpack_require__(/*! ./integrations/tracing/postgres.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js\");\nconst postgresjs = __webpack_require__(/*! ./integrations/tracing/postgresjs.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js\");\nconst prisma = __webpack_require__(/*! ./integrations/tracing/prisma.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js\");\nconst index$5 = __webpack_require__(/*! ./integrations/tracing/hapi/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js\");\nconst index$6 = __webpack_require__(/*! ./integrations/tracing/hono/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js\");\nconst koa = __webpack_require__(/*! ./integrations/tracing/koa.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js\");\nconst connect = __webpack_require__(/*! ./integrations/tracing/connect.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js\");\nconst knex = __webpack_require__(/*! ./integrations/tracing/knex.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js\");\nconst tedious = __webpack_require__(/*! ./integrations/tracing/tedious.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js\");\nconst genericPool = __webpack_require__(/*! ./integrations/tracing/genericPool.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js\");\nconst dataloader = __webpack_require__(/*! ./integrations/tracing/dataloader.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js\");\nconst amqplib = __webpack_require__(/*! ./integrations/tracing/amqplib.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js\");\nconst index$a = __webpack_require__(/*! ./integrations/tracing/vercelai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js\");\nconst index$9 = __webpack_require__(/*! ./integrations/tracing/openai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js\");\nconst index = __webpack_require__(/*! ./integrations/tracing/anthropic-ai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js\");\nconst index$4 = __webpack_require__(/*! ./integrations/tracing/google-genai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js\");\nconst index$7 = __webpack_require__(/*! ./integrations/tracing/langchain/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js\");\nconst index$8 = __webpack_require__(/*! ./integrations/tracing/langgraph/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js\");\nconst launchDarkly = __webpack_require__(/*! ./integrations/featureFlagShims/launchDarkly.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js\");\nconst openFeature = __webpack_require__(/*! ./integrations/featureFlagShims/openFeature.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js\");\nconst statsig = __webpack_require__(/*! ./integrations/featureFlagShims/statsig.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js\");\nconst unleash = __webpack_require__(/*! ./integrations/featureFlagShims/unleash.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js\");\nconst growthbook = __webpack_require__(/*! ./integrations/featureFlagShims/growthbook.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js\");\nconst firebase = __webpack_require__(/*! ./integrations/tracing/firebase/firebase.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js\");\nconst index$3 = __webpack_require__(/*! ./sdk/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js\");\nconst initOtel = __webpack_require__(/*! ./sdk/initOtel.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js\");\nconst index$2 = __webpack_require__(/*! ./integrations/tracing/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\");\nconst opentelemetry = __webpack_require__(/*! @sentry/opentelemetry */ \"(ssr)/./node_modules/.pnpm/@sentry+opentelemetry@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hoo_70f539428297572a9e3752da9c315982/node_modules/@sentry/opentelemetry/build/cjs/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\n\n\nexports.httpIntegration = http.httpIntegration;\nexports.nativeNodeFetchIntegration = nodeFetch.nativeNodeFetchIntegration;\nexports.fsIntegration = fs.fsIntegration;\nexports.expressErrorHandler = express.expressErrorHandler;\nexports.expressIntegration = express.expressIntegration;\nexports.setupExpressErrorHandler = express.setupExpressErrorHandler;\nexports.fastifyIntegration = index$1.fastifyIntegration;\nexports.setupFastifyErrorHandler = index$1.setupFastifyErrorHandler;\nexports.graphqlIntegration = graphql.graphqlIntegration;\nexports.kafkaIntegration = kafka.kafkaIntegration;\nexports.lruMemoizerIntegration = lrumemoizer.lruMemoizerIntegration;\nexports.mongoIntegration = mongo.mongoIntegration;\nexports.mongooseIntegration = mongoose.mongooseIntegration;\nexports.mysqlIntegration = mysql.mysqlIntegration;\nexports.mysql2Integration = mysql2.mysql2Integration;\nexports.redisIntegration = redis.redisIntegration;\nexports.postgresIntegration = postgres.postgresIntegration;\nexports.postgresJsIntegration = postgresjs.postgresJsIntegration;\nexports.prismaIntegration = prisma.prismaIntegration;\nexports.hapiIntegration = index$5.hapiIntegration;\nexports.setupHapiErrorHandler = index$5.setupHapiErrorHandler;\nexports.honoIntegration = index$6.honoIntegration;\nexports.setupHonoErrorHandler = index$6.setupHonoErrorHandler;\nexports.koaIntegration = koa.koaIntegration;\nexports.setupKoaErrorHandler = koa.setupKoaErrorHandler;\nexports.connectIntegration = connect.connectIntegration;\nexports.setupConnectErrorHandler = connect.setupConnectErrorHandler;\nexports.knexIntegration = knex.knexIntegration;\nexports.tediousIntegration = tedious.tediousIntegration;\nexports.genericPoolIntegration = genericPool.genericPoolIntegration;\nexports.dataloaderIntegration = dataloader.dataloaderIntegration;\nexports.amqplibIntegration = amqplib.amqplibIntegration;\nexports.vercelAIIntegration = index$a.vercelAIIntegration;\nexports.openAIIntegration = index$9.openAIIntegration;\nexports.anthropicAIIntegration = index.anthropicAIIntegration;\nexports.googleGenAIIntegration = index$4.googleGenAIIntegration;\nexports.langChainIntegration = index$7.langChainIntegration;\nexports.langGraphIntegration = index$8.langGraphIntegration;\nexports.buildLaunchDarklyFlagUsedHandler = launchDarkly.buildLaunchDarklyFlagUsedHandlerShim;\nexports.launchDarklyIntegration = launchDarkly.launchDarklyIntegrationShim;\nexports.OpenFeatureIntegrationHook = openFeature.OpenFeatureIntegrationHookShim;\nexports.openFeatureIntegration = openFeature.openFeatureIntegrationShim;\nexports.statsigIntegration = statsig.statsigIntegrationShim;\nexports.unleashIntegration = unleash.unleashIntegrationShim;\nexports.growthbookIntegration = growthbook.growthbookIntegrationShim;\nexports.firebaseIntegration = firebase.firebaseIntegration;\nexports.getDefaultIntegrations = index$3.getDefaultIntegrations;\nexports.getDefaultIntegrationsWithoutPerformance = index$3.getDefaultIntegrationsWithoutPerformance;\nexports.init = index$3.init;\nexports.initWithoutDefaultIntegrations = index$3.initWithoutDefaultIntegrations;\nexports.initOpenTelemetry = initOtel.initOpenTelemetry;\nexports.preloadOpenTelemetry = initOtel.preloadOpenTelemetry;\nexports.getAutoPerformanceIntegrations = index$2.getAutoPerformanceIntegrations;\nexports.setNodeAsyncContextStrategy = opentelemetry.setOpenTelemetryContextAsyncContextStrategy;\nexports.SDK_VERSION = core.SDK_VERSION;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_OP = core.SEMANTIC_ATTRIBUTE_SENTRY_OP;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN = core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE = core.SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE;\nexports.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE = core.SEMANTIC_ATTRIBUTE_SENTRY_SOURCE;\nexports.Scope = core.Scope;\nexports.addBreadcrumb = core.addBreadcrumb;\nexports.addEventProcessor = core.addEventProcessor;\nexports.addIntegration = core.addIntegration;\nexports.captureCheckIn = core.captureCheckIn;\nexports.captureConsoleIntegration = core.captureConsoleIntegration;\nexports.captureEvent = core.captureEvent;\nexports.captureException = core.captureException;\nexports.captureFeedback = core.captureFeedback;\nexports.captureMessage = core.captureMessage;\nexports.captureSession = core.captureSession;\nexports.close = core.close;\nexports.consoleIntegration = core.consoleIntegration;\nexports.consoleLoggingIntegration = core.consoleLoggingIntegration;\nexports.continueTrace = core.continueTrace;\nexports.createConsolaReporter = core.createConsolaReporter;\nexports.createLangChainCallbackHandler = core.createLangChainCallbackHandler;\nexports.createTransport = core.createTransport;\nexports.dedupeIntegration = core.dedupeIntegration;\nexports.endSession = core.endSession;\nexports.eventFiltersIntegration = core.eventFiltersIntegration;\nexports.extraErrorDataIntegration = core.extraErrorDataIntegration;\nexports.featureFlagsIntegration = core.featureFlagsIntegration;\nexports.flush = core.flush;\nexports.functionToStringIntegration = core.functionToStringIntegration;\nexports.getActiveSpan = core.getActiveSpan;\nexports.getClient = core.getClient;\nexports.getCurrentScope = core.getCurrentScope;\nexports.getGlobalScope = core.getGlobalScope;\nexports.getIsolationScope = core.getIsolationScope;\nexports.getRootSpan = core.getRootSpan;\nexports.getSpanDescendants = core.getSpanDescendants;\nexports.getSpanStatusFromHttpCode = core.getSpanStatusFromHttpCode;\nexports.getTraceData = core.getTraceData;\nexports.getTraceMetaTags = core.getTraceMetaTags;\nexports.httpHeadersToSpanAttributes = core.httpHeadersToSpanAttributes;\nexports.inboundFiltersIntegration = core.inboundFiltersIntegration;\nexports.instrumentAnthropicAiClient = core.instrumentAnthropicAiClient;\nexports.instrumentGoogleGenAIClient = core.instrumentGoogleGenAIClient;\nexports.instrumentLangGraph = core.instrumentLangGraph;\nexports.instrumentOpenAiClient = core.instrumentOpenAiClient;\nexports.instrumentStateGraphCompile = core.instrumentStateGraphCompile;\nexports.instrumentSupabaseClient = core.instrumentSupabaseClient;\nexports.isEnabled = core.isEnabled;\nexports.isInitialized = core.isInitialized;\nexports.lastEventId = core.lastEventId;\nexports.linkedErrorsIntegration = core.linkedErrorsIntegration;\nexports.parameterize = core.parameterize;\nexports.profiler = core.profiler;\nexports.requestDataIntegration = core.requestDataIntegration;\nexports.rewriteFramesIntegration = core.rewriteFramesIntegration;\nexports.setContext = core.setContext;\nexports.setConversationId = core.setConversationId;\nexports.setCurrentClient = core.setCurrentClient;\nexports.setExtra = core.setExtra;\nexports.setExtras = core.setExtras;\nexports.setHttpStatus = core.setHttpStatus;\nexports.setMeasurement = core.setMeasurement;\nexports.setTag = core.setTag;\nexports.setTags = core.setTags;\nexports.setUser = core.setUser;\nexports.spanToBaggageHeader = core.spanToBaggageHeader;\nexports.spanToJSON = core.spanToJSON;\nexports.spanToTraceHeader = core.spanToTraceHeader;\nexports.startInactiveSpan = core.startInactiveSpan;\nexports.startNewTrace = core.startNewTrace;\nexports.startSession = core.startSession;\nexports.startSpan = core.startSpan;\nexports.startSpanManual = core.startSpanManual;\nexports.supabaseIntegration = core.supabaseIntegration;\nexports.suppressTracing = core.suppressTracing;\nexports.trpcMiddleware = core.trpcMiddleware;\nexports.updateSpanName = core.updateSpanName;\nexports.winterCGHeadersToDict = core.winterCGHeadersToDict;\nexports.withActiveSpan = core.withActiveSpan;\nexports.withIsolationScope = core.withIsolationScope;\nexports.withMonitor = core.withMonitor;\nexports.withScope = core.withScope;\nexports.wrapMcpServerWithSentry = core.wrapMcpServerWithSentry;\nexports.zodErrorsIntegration = core.zodErrorsIntegration;\nexports.NODE_VERSION = nodeCore.NODE_VERSION;\nexports.NodeClient = nodeCore.NodeClient;\nexports.SentryContextManager = nodeCore.SentryContextManager;\nexports.anrIntegration = nodeCore.anrIntegration;\nexports.childProcessIntegration = nodeCore.childProcessIntegration;\nexports.contextLinesIntegration = nodeCore.contextLinesIntegration;\nexports.createGetModuleFromFilename = nodeCore.createGetModuleFromFilename;\nexports.createSentryWinstonTransport = nodeCore.createSentryWinstonTransport;\nexports.cron = nodeCore.cron;\nexports.defaultStackParser = nodeCore.defaultStackParser;\nexports.disableAnrDetectionForCallback = nodeCore.disableAnrDetectionForCallback;\nexports.generateInstrumentOnce = nodeCore.generateInstrumentOnce;\nexports.getSentryRelease = nodeCore.getSentryRelease;\nexports.httpServerIntegration = nodeCore.httpServerIntegration;\nexports.httpServerSpansIntegration = nodeCore.httpServerSpansIntegration;\nexports.localVariablesIntegration = nodeCore.localVariablesIntegration;\nexports.logger = nodeCore.logger;\nexports.makeNodeTransport = nodeCore.makeNodeTransport;\nexports.metrics = nodeCore.metrics;\nexports.modulesIntegration = nodeCore.modulesIntegration;\nexports.nodeContextIntegration = nodeCore.nodeContextIntegration;\nexports.nodeRuntimeMetricsIntegration = nodeCore.nodeRuntimeMetricsIntegration;\nexports.onUncaughtExceptionIntegration = nodeCore.onUncaughtExceptionIntegration;\nexports.onUnhandledRejectionIntegration = nodeCore.onUnhandledRejectionIntegration;\nexports.pinoIntegration = nodeCore.pinoIntegration;\nexports.processSessionIntegration = nodeCore.processSessionIntegration;\nexports.spotlightIntegration = nodeCore.spotlightIntegration;\nexports.systemErrorIntegration = nodeCore.systemErrorIntegration;\nexports.validateOpenTelemetrySetup = nodeCore.validateOpenTelemetrySetup;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW5kZXguanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLHdJQUF3QjtBQUM3QyxrQkFBa0IsbUJBQU8sQ0FBQyxvSkFBOEI7QUFDeEQsV0FBVyxtQkFBTyxDQUFDLG9JQUFzQjtBQUN6QyxnQkFBZ0IsbUJBQU8sQ0FBQyw4SkFBbUM7QUFDM0QsZ0JBQWdCLG1CQUFPLENBQUMsMEtBQXlDO0FBQ2pFLGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxjQUFjLG1CQUFPLENBQUMsMEpBQWlDO0FBQ3ZELG9CQUFvQixtQkFBTyxDQUFDLHNLQUF1QztBQUNuRSxjQUFjLG1CQUFPLENBQUMsMEpBQWlDO0FBQ3ZELGlCQUFpQixtQkFBTyxDQUFDLGdLQUFvQztBQUM3RCxjQUFjLG1CQUFPLENBQUMsMEpBQWlDO0FBQ3ZELGVBQWUsbUJBQU8sQ0FBQyw0SkFBa0M7QUFDekQsY0FBYyxtQkFBTyxDQUFDLDBKQUFpQztBQUN2RCxpQkFBaUIsbUJBQU8sQ0FBQyxnS0FBb0M7QUFDN0QsbUJBQW1CLG1CQUFPLENBQUMsb0tBQXNDO0FBQ2pFLGVBQWUsbUJBQU8sQ0FBQyw0SkFBa0M7QUFDekQsZ0JBQWdCLG1CQUFPLENBQUMsb0tBQXNDO0FBQzlELGdCQUFnQixtQkFBTyxDQUFDLG9LQUFzQztBQUM5RCxZQUFZLG1CQUFPLENBQUMsc0pBQStCO0FBQ25ELGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxhQUFhLG1CQUFPLENBQUMsd0pBQWdDO0FBQ3JELGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxvQkFBb0IsbUJBQU8sQ0FBQyxzS0FBdUM7QUFDbkUsbUJBQW1CLG1CQUFPLENBQUMsb0tBQXNDO0FBQ2pFLGdCQUFnQixtQkFBTyxDQUFDLDhKQUFtQztBQUMzRCxnQkFBZ0IsbUJBQU8sQ0FBQyw0S0FBMEM7QUFDbEUsZ0JBQWdCLG1CQUFPLENBQUMsd0tBQXdDO0FBQ2hFLGNBQWMsbUJBQU8sQ0FBQyxvTEFBOEM7QUFDcEUsZ0JBQWdCLG1CQUFPLENBQUMsb0xBQThDO0FBQ3RFLGdCQUFnQixtQkFBTyxDQUFDLDhLQUEyQztBQUNuRSxnQkFBZ0IsbUJBQU8sQ0FBQyw4S0FBMkM7QUFDbkUscUJBQXFCLG1CQUFPLENBQUMsMExBQWlEO0FBQzlFLG9CQUFvQixtQkFBTyxDQUFDLHdMQUFnRDtBQUM1RSxnQkFBZ0IsbUJBQU8sQ0FBQyxnTEFBNEM7QUFDcEUsZ0JBQWdCLG1CQUFPLENBQUMsZ0xBQTRDO0FBQ3BFLG1CQUFtQixtQkFBTyxDQUFDLHNMQUErQztBQUMxRSxpQkFBaUIsbUJBQU8sQ0FBQyxrTEFBNkM7QUFDdEUsZ0JBQWdCLG1CQUFPLENBQUMsd0hBQWdCO0FBQ3hDLGlCQUFpQixtQkFBTyxDQUFDLDhIQUFtQjtBQUM1QyxnQkFBZ0IsbUJBQU8sQ0FBQywwSkFBaUM7QUFDekQsc0JBQXNCLG1CQUFPLENBQUMsd09BQXVCO0FBQ3JELGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7Ozs7QUFJNUMsdUJBQXVCO0FBQ3ZCLGtDQUFrQztBQUNsQyxxQkFBcUI7QUFDckIsMkJBQTJCO0FBQzNCLDBCQUEwQjtBQUMxQixnQ0FBZ0M7QUFDaEMsMEJBQTBCO0FBQzFCLGdDQUFnQztBQUNoQywwQkFBMEI7QUFDMUIsd0JBQXdCO0FBQ3hCLDhCQUE4QjtBQUM5Qix3QkFBd0I7QUFDeEIsMkJBQTJCO0FBQzNCLHdCQUF3QjtBQUN4Qix5QkFBeUI7QUFDekIsd0JBQXdCO0FBQ3hCLDJCQUEyQjtBQUMzQiw2QkFBNkI7QUFDN0IseUJBQXlCO0FBQ3pCLHVCQUF1QjtBQUN2Qiw2QkFBNkI7QUFDN0IsdUJBQXVCO0FBQ3ZCLDZCQUE2QjtBQUM3QixzQkFBc0I7QUFDdEIsNEJBQTRCO0FBQzVCLDBCQUEwQjtBQUMxQixnQ0FBZ0M7QUFDaEMsdUJBQXVCO0FBQ3ZCLDBCQUEwQjtBQUMxQiw4QkFBOEI7QUFDOUIsNkJBQTZCO0FBQzdCLDBCQUEwQjtBQUMxQiwyQkFBMkI7QUFDM0IseUJBQXlCO0FBQ3pCLDhCQUE4QjtBQUM5Qiw4QkFBOEI7QUFDOUIsNEJBQTRCO0FBQzVCLDRCQUE0QjtBQUM1Qix3Q0FBd0M7QUFDeEMsK0JBQStCO0FBQy9CLGtDQUFrQztBQUNsQyw4QkFBOEI7QUFDOUIsMEJBQTBCO0FBQzFCLDBCQUEwQjtBQUMxQiw2QkFBNkI7QUFDN0IsMkJBQTJCO0FBQzNCLDhCQUE4QjtBQUM5QixnREFBZ0Q7QUFDaEQsWUFBWTtBQUNaLHNDQUFzQztBQUN0Qyx5QkFBeUI7QUFDekIsNEJBQTRCO0FBQzVCLHNDQUFzQztBQUN0QyxtQ0FBbUM7QUFDbkMsbUJBQW1CO0FBQ25CLG9DQUFvQztBQUNwQyx3Q0FBd0M7QUFDeEMsNkNBQTZDO0FBQzdDLHdDQUF3QztBQUN4QyxhQUFhO0FBQ2IscUJBQXFCO0FBQ3JCLHlCQUF5QjtBQUN6QixzQkFBc0I7QUFDdEIsc0JBQXNCO0FBQ3RCLGlDQUFpQztBQUNqQyxvQkFBb0I7QUFDcEIsd0JBQXdCO0FBQ3hCLHVCQUF1QjtBQUN2QixzQkFBc0I7QUFDdEIsc0JBQXNCO0FBQ3RCLGFBQWE7QUFDYiwwQkFBMEI7QUFDMUIsaUNBQWlDO0FBQ2pDLHFCQUFxQjtBQUNyQiw2QkFBNkI7QUFDN0Isc0NBQXNDO0FBQ3RDLHVCQUF1QjtBQUN2Qix5QkFBeUI7QUFDekIsa0JBQWtCO0FBQ2xCLCtCQUErQjtBQUMvQixpQ0FBaUM7QUFDakMsK0JBQStCO0FBQy9CLGFBQWE7QUFDYixtQ0FBbUM7QUFDbkMscUJBQXFCO0FBQ3JCLGlCQUFpQjtBQUNqQix1QkFBdUI7QUFDdkIsc0JBQXNCO0FBQ3RCLHlCQUF5QjtBQUN6QixtQkFBbUI7QUFDbkIsMEJBQTBCO0FBQzFCLGlDQUFpQztBQUNqQyxvQkFBb0I7QUFDcEIsd0JBQXdCO0FBQ3hCLG1DQUFtQztBQUNuQyxpQ0FBaUM7QUFDakMsbUNBQW1DO0FBQ25DLG1DQUFtQztBQUNuQywyQkFBMkI7QUFDM0IsOEJBQThCO0FBQzlCLG1DQUFtQztBQUNuQyxnQ0FBZ0M7QUFDaEMsaUJBQWlCO0FBQ2pCLHFCQUFxQjtBQUNyQixtQkFBbUI7QUFDbkIsK0JBQStCO0FBQy9CLG9CQUFvQjtBQUNwQixnQkFBZ0I7QUFDaEIsOEJBQThCO0FBQzlCLGdDQUFnQztBQUNoQyxrQkFBa0I7QUFDbEIseUJBQXlCO0FBQ3pCLHdCQUF3QjtBQUN4QixnQkFBZ0I7QUFDaEIsaUJBQWlCO0FBQ2pCLHFCQUFxQjtBQUNyQixzQkFBc0I7QUFDdEIsY0FBYztBQUNkLGVBQWU7QUFDZixlQUFlO0FBQ2YsMkJBQTJCO0FBQzNCLGtCQUFrQjtBQUNsQix5QkFBeUI7QUFDekIseUJBQXlCO0FBQ3pCLHFCQUFxQjtBQUNyQixvQkFBb0I7QUFDcEIsaUJBQWlCO0FBQ2pCLHVCQUF1QjtBQUN2QiwyQkFBMkI7QUFDM0IsdUJBQXVCO0FBQ3ZCLHNCQUFzQjtBQUN0QixzQkFBc0I7QUFDdEIsNkJBQTZCO0FBQzdCLHNCQUFzQjtBQUN0QiwwQkFBMEI7QUFDMUIsbUJBQW1CO0FBQ25CLGlCQUFpQjtBQUNqQiwrQkFBK0I7QUFDL0IsNEJBQTRCO0FBQzVCLG9CQUFvQjtBQUNwQixrQkFBa0I7QUFDbEIsNEJBQTRCO0FBQzVCLHNCQUFzQjtBQUN0QiwrQkFBK0I7QUFDL0IsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyxvQ0FBb0M7QUFDcEMsWUFBWTtBQUNaLDBCQUEwQjtBQUMxQixzQ0FBc0M7QUFDdEMsOEJBQThCO0FBQzlCLHdCQUF3QjtBQUN4Qiw2QkFBNkI7QUFDN0Isa0NBQWtDO0FBQ2xDLGlDQUFpQztBQUNqQyxjQUFjO0FBQ2QseUJBQXlCO0FBQ3pCLGVBQWU7QUFDZiwwQkFBMEI7QUFDMUIsOEJBQThCO0FBQzlCLHFDQUFxQztBQUNyQyxzQ0FBc0M7QUFDdEMsdUNBQXVDO0FBQ3ZDLHVCQUF1QjtBQUN2QixpQ0FBaUM7QUFDakMsNEJBQTRCO0FBQzVCLDhCQUE4QjtBQUM5QixrQ0FBa0M7QUFDbEMiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGh0dHAgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy9odHRwLmpzJyk7XG5jb25zdCBub2RlRmV0Y2ggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy9ub2RlLWZldGNoLmpzJyk7XG5jb25zdCBmcyA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZzLmpzJyk7XG5jb25zdCBleHByZXNzID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9leHByZXNzLmpzJyk7XG5jb25zdCBpbmRleCQxID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9mYXN0aWZ5L2luZGV4LmpzJyk7XG5jb25zdCBncmFwaHFsID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9ncmFwaHFsLmpzJyk7XG5jb25zdCBrYWZrYSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcva2Fma2EuanMnKTtcbmNvbnN0IGxydW1lbW9pemVyID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9scnVtZW1vaXplci5qcycpO1xuY29uc3QgbW9uZ28gPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL21vbmdvLmpzJyk7XG5jb25zdCBtb25nb29zZSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ29vc2UuanMnKTtcbmNvbnN0IG15c3FsID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9teXNxbC5qcycpO1xuY29uc3QgbXlzcWwyID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9teXNxbDIuanMnKTtcbmNvbnN0IHJlZGlzID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9yZWRpcy5qcycpO1xuY29uc3QgcG9zdGdyZXMgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL3Bvc3RncmVzLmpzJyk7XG5jb25zdCBwb3N0Z3Jlc2pzID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9wb3N0Z3Jlc2pzLmpzJyk7XG5jb25zdCBwcmlzbWEgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL3ByaXNtYS5qcycpO1xuY29uc3QgaW5kZXgkNSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvaGFwaS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXgkNiA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbmRleC5qcycpO1xuY29uc3Qga29hID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9rb2EuanMnKTtcbmNvbnN0IGNvbm5lY3QgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2Nvbm5lY3QuanMnKTtcbmNvbnN0IGtuZXggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2tuZXguanMnKTtcbmNvbnN0IHRlZGlvdXMgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL3RlZGlvdXMuanMnKTtcbmNvbnN0IGdlbmVyaWNQb29sID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9nZW5lcmljUG9vbC5qcycpO1xuY29uc3QgZGF0YWxvYWRlciA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvZGF0YWxvYWRlci5qcycpO1xuY29uc3QgYW1xcGxpYiA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvYW1xcGxpYi5qcycpO1xuY29uc3QgaW5kZXgkYSA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvaW5kZXguanMnKTtcbmNvbnN0IGluZGV4JDkgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL29wZW5haS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2FudGhyb3BpYy1haS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXgkNCA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luZGV4LmpzJyk7XG5jb25zdCBpbmRleCQ3ID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9sYW5nY2hhaW4vaW5kZXguanMnKTtcbmNvbnN0IGluZGV4JDggPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2xhbmdncmFwaC9pbmRleC5qcycpO1xuY29uc3QgbGF1bmNoRGFya2x5ID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9sYXVuY2hEYXJrbHkuanMnKTtcbmNvbnN0IG9wZW5GZWF0dXJlID0gcmVxdWlyZSgnLi9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9vcGVuRmVhdHVyZS5qcycpO1xuY29uc3Qgc3RhdHNpZyA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvc3RhdHNpZy5qcycpO1xuY29uc3QgdW5sZWFzaCA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvdW5sZWFzaC5qcycpO1xuY29uc3QgZ3Jvd3RoYm9vayA9IHJlcXVpcmUoJy4vaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvZ3Jvd3RoYm9vay5qcycpO1xuY29uc3QgZmlyZWJhc2UgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2ZpcmViYXNlL2ZpcmViYXNlLmpzJyk7XG5jb25zdCBpbmRleCQzID0gcmVxdWlyZSgnLi9zZGsvaW5kZXguanMnKTtcbmNvbnN0IGluaXRPdGVsID0gcmVxdWlyZSgnLi9zZGsvaW5pdE90ZWwuanMnKTtcbmNvbnN0IGluZGV4JDIgPSByZXF1aXJlKCcuL2ludGVncmF0aW9ucy90cmFjaW5nL2luZGV4LmpzJyk7XG5jb25zdCBvcGVudGVsZW1ldHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9vcGVudGVsZW1ldHJ5Jyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cblxuXG5leHBvcnRzLmh0dHBJbnRlZ3JhdGlvbiA9IGh0dHAuaHR0cEludGVncmF0aW9uO1xuZXhwb3J0cy5uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbiA9IG5vZGVGZXRjaC5uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZnNJbnRlZ3JhdGlvbiA9IGZzLmZzSW50ZWdyYXRpb247XG5leHBvcnRzLmV4cHJlc3NFcnJvckhhbmRsZXIgPSBleHByZXNzLmV4cHJlc3NFcnJvckhhbmRsZXI7XG5leHBvcnRzLmV4cHJlc3NJbnRlZ3JhdGlvbiA9IGV4cHJlc3MuZXhwcmVzc0ludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cEV4cHJlc3NFcnJvckhhbmRsZXIgPSBleHByZXNzLnNldHVwRXhwcmVzc0Vycm9ySGFuZGxlcjtcbmV4cG9ydHMuZmFzdGlmeUludGVncmF0aW9uID0gaW5kZXgkMS5mYXN0aWZ5SW50ZWdyYXRpb247XG5leHBvcnRzLnNldHVwRmFzdGlmeUVycm9ySGFuZGxlciA9IGluZGV4JDEuc2V0dXBGYXN0aWZ5RXJyb3JIYW5kbGVyO1xuZXhwb3J0cy5ncmFwaHFsSW50ZWdyYXRpb24gPSBncmFwaHFsLmdyYXBocWxJbnRlZ3JhdGlvbjtcbmV4cG9ydHMua2Fma2FJbnRlZ3JhdGlvbiA9IGthZmthLmthZmthSW50ZWdyYXRpb247XG5leHBvcnRzLmxydU1lbW9pemVySW50ZWdyYXRpb24gPSBscnVtZW1vaXplci5scnVNZW1vaXplckludGVncmF0aW9uO1xuZXhwb3J0cy5tb25nb0ludGVncmF0aW9uID0gbW9uZ28ubW9uZ29JbnRlZ3JhdGlvbjtcbmV4cG9ydHMubW9uZ29vc2VJbnRlZ3JhdGlvbiA9IG1vbmdvb3NlLm1vbmdvb3NlSW50ZWdyYXRpb247XG5leHBvcnRzLm15c3FsSW50ZWdyYXRpb24gPSBteXNxbC5teXNxbEludGVncmF0aW9uO1xuZXhwb3J0cy5teXNxbDJJbnRlZ3JhdGlvbiA9IG15c3FsMi5teXNxbDJJbnRlZ3JhdGlvbjtcbmV4cG9ydHMucmVkaXNJbnRlZ3JhdGlvbiA9IHJlZGlzLnJlZGlzSW50ZWdyYXRpb247XG5leHBvcnRzLnBvc3RncmVzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlcy5wb3N0Z3Jlc0ludGVncmF0aW9uO1xuZXhwb3J0cy5wb3N0Z3Jlc0pzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlc2pzLnBvc3RncmVzSnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMucHJpc21hSW50ZWdyYXRpb24gPSBwcmlzbWEucHJpc21hSW50ZWdyYXRpb247XG5leHBvcnRzLmhhcGlJbnRlZ3JhdGlvbiA9IGluZGV4JDUuaGFwaUludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cEhhcGlFcnJvckhhbmRsZXIgPSBpbmRleCQ1LnNldHVwSGFwaUVycm9ySGFuZGxlcjtcbmV4cG9ydHMuaG9ub0ludGVncmF0aW9uID0gaW5kZXgkNi5ob25vSW50ZWdyYXRpb247XG5leHBvcnRzLnNldHVwSG9ub0Vycm9ySGFuZGxlciA9IGluZGV4JDYuc2V0dXBIb25vRXJyb3JIYW5kbGVyO1xuZXhwb3J0cy5rb2FJbnRlZ3JhdGlvbiA9IGtvYS5rb2FJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuc2V0dXBLb2FFcnJvckhhbmRsZXIgPSBrb2Euc2V0dXBLb2FFcnJvckhhbmRsZXI7XG5leHBvcnRzLmNvbm5lY3RJbnRlZ3JhdGlvbiA9IGNvbm5lY3QuY29ubmVjdEludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cENvbm5lY3RFcnJvckhhbmRsZXIgPSBjb25uZWN0LnNldHVwQ29ubmVjdEVycm9ySGFuZGxlcjtcbmV4cG9ydHMua25leEludGVncmF0aW9uID0ga25leC5rbmV4SW50ZWdyYXRpb247XG5leHBvcnRzLnRlZGlvdXNJbnRlZ3JhdGlvbiA9IHRlZGlvdXMudGVkaW91c0ludGVncmF0aW9uO1xuZXhwb3J0cy5nZW5lcmljUG9vbEludGVncmF0aW9uID0gZ2VuZXJpY1Bvb2wuZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZGF0YWxvYWRlckludGVncmF0aW9uID0gZGF0YWxvYWRlci5kYXRhbG9hZGVySW50ZWdyYXRpb247XG5leHBvcnRzLmFtcXBsaWJJbnRlZ3JhdGlvbiA9IGFtcXBsaWIuYW1xcGxpYkludGVncmF0aW9uO1xuZXhwb3J0cy52ZXJjZWxBSUludGVncmF0aW9uID0gaW5kZXgkYS52ZXJjZWxBSUludGVncmF0aW9uO1xuZXhwb3J0cy5vcGVuQUlJbnRlZ3JhdGlvbiA9IGluZGV4JDkub3BlbkFJSW50ZWdyYXRpb247XG5leHBvcnRzLmFudGhyb3BpY0FJSW50ZWdyYXRpb24gPSBpbmRleC5hbnRocm9waWNBSUludGVncmF0aW9uO1xuZXhwb3J0cy5nb29nbGVHZW5BSUludGVncmF0aW9uID0gaW5kZXgkNC5nb29nbGVHZW5BSUludGVncmF0aW9uO1xuZXhwb3J0cy5sYW5nQ2hhaW5JbnRlZ3JhdGlvbiA9IGluZGV4JDcubGFuZ0NoYWluSW50ZWdyYXRpb247XG5leHBvcnRzLmxhbmdHcmFwaEludGVncmF0aW9uID0gaW5kZXgkOC5sYW5nR3JhcGhJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXIgPSBsYXVuY2hEYXJrbHkuYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltO1xuZXhwb3J0cy5sYXVuY2hEYXJrbHlJbnRlZ3JhdGlvbiA9IGxhdW5jaERhcmtseS5sYXVuY2hEYXJrbHlJbnRlZ3JhdGlvblNoaW07XG5leHBvcnRzLk9wZW5GZWF0dXJlSW50ZWdyYXRpb25Ib29rID0gb3BlbkZlYXR1cmUuT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltO1xuZXhwb3J0cy5vcGVuRmVhdHVyZUludGVncmF0aW9uID0gb3BlbkZlYXR1cmUub3BlbkZlYXR1cmVJbnRlZ3JhdGlvblNoaW07XG5leHBvcnRzLnN0YXRzaWdJbnRlZ3JhdGlvbiA9IHN0YXRzaWcuc3RhdHNpZ0ludGVncmF0aW9uU2hpbTtcbmV4cG9ydHMudW5sZWFzaEludGVncmF0aW9uID0gdW5sZWFzaC51bmxlYXNoSW50ZWdyYXRpb25TaGltO1xuZXhwb3J0cy5ncm93dGhib29rSW50ZWdyYXRpb24gPSBncm93dGhib29rLmdyb3d0aGJvb2tJbnRlZ3JhdGlvblNoaW07XG5leHBvcnRzLmZpcmViYXNlSW50ZWdyYXRpb24gPSBmaXJlYmFzZS5maXJlYmFzZUludGVncmF0aW9uO1xuZXhwb3J0cy5nZXREZWZhdWx0SW50ZWdyYXRpb25zID0gaW5kZXgkMy5nZXREZWZhdWx0SW50ZWdyYXRpb25zO1xuZXhwb3J0cy5nZXREZWZhdWx0SW50ZWdyYXRpb25zV2l0aG91dFBlcmZvcm1hbmNlID0gaW5kZXgkMy5nZXREZWZhdWx0SW50ZWdyYXRpb25zV2l0aG91dFBlcmZvcm1hbmNlO1xuZXhwb3J0cy5pbml0ID0gaW5kZXgkMy5pbml0O1xuZXhwb3J0cy5pbml0V2l0aG91dERlZmF1bHRJbnRlZ3JhdGlvbnMgPSBpbmRleCQzLmluaXRXaXRob3V0RGVmYXVsdEludGVncmF0aW9ucztcbmV4cG9ydHMuaW5pdE9wZW5UZWxlbWV0cnkgPSBpbml0T3RlbC5pbml0T3BlblRlbGVtZXRyeTtcbmV4cG9ydHMucHJlbG9hZE9wZW5UZWxlbWV0cnkgPSBpbml0T3RlbC5wcmVsb2FkT3BlblRlbGVtZXRyeTtcbmV4cG9ydHMuZ2V0QXV0b1BlcmZvcm1hbmNlSW50ZWdyYXRpb25zID0gaW5kZXgkMi5nZXRBdXRvUGVyZm9ybWFuY2VJbnRlZ3JhdGlvbnM7XG5leHBvcnRzLnNldE5vZGVBc3luY0NvbnRleHRTdHJhdGVneSA9IG9wZW50ZWxlbWV0cnkuc2V0T3BlblRlbGVtZXRyeUNvbnRleHRBc3luY0NvbnRleHRTdHJhdGVneTtcbmV4cG9ydHMuU0RLX1ZFUlNJT04gPSBjb3JlLlNES19WRVJTSU9OO1xuZXhwb3J0cy5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QID0gY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QO1xuZXhwb3J0cy5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTiA9IGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU47XG5leHBvcnRzLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfU0FNUExFX1JBVEUgPSBjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfU0FNUExFX1JBVEU7XG5leHBvcnRzLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfU09VUkNFID0gY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX1NPVVJDRTtcbmV4cG9ydHMuU2NvcGUgPSBjb3JlLlNjb3BlO1xuZXhwb3J0cy5hZGRCcmVhZGNydW1iID0gY29yZS5hZGRCcmVhZGNydW1iO1xuZXhwb3J0cy5hZGRFdmVudFByb2Nlc3NvciA9IGNvcmUuYWRkRXZlbnRQcm9jZXNzb3I7XG5leHBvcnRzLmFkZEludGVncmF0aW9uID0gY29yZS5hZGRJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY2FwdHVyZUNoZWNrSW4gPSBjb3JlLmNhcHR1cmVDaGVja0luO1xuZXhwb3J0cy5jYXB0dXJlQ29uc29sZUludGVncmF0aW9uID0gY29yZS5jYXB0dXJlQ29uc29sZUludGVncmF0aW9uO1xuZXhwb3J0cy5jYXB0dXJlRXZlbnQgPSBjb3JlLmNhcHR1cmVFdmVudDtcbmV4cG9ydHMuY2FwdHVyZUV4Y2VwdGlvbiA9IGNvcmUuY2FwdHVyZUV4Y2VwdGlvbjtcbmV4cG9ydHMuY2FwdHVyZUZlZWRiYWNrID0gY29yZS5jYXB0dXJlRmVlZGJhY2s7XG5leHBvcnRzLmNhcHR1cmVNZXNzYWdlID0gY29yZS5jYXB0dXJlTWVzc2FnZTtcbmV4cG9ydHMuY2FwdHVyZVNlc3Npb24gPSBjb3JlLmNhcHR1cmVTZXNzaW9uO1xuZXhwb3J0cy5jbG9zZSA9IGNvcmUuY2xvc2U7XG5leHBvcnRzLmNvbnNvbGVJbnRlZ3JhdGlvbiA9IGNvcmUuY29uc29sZUludGVncmF0aW9uO1xuZXhwb3J0cy5jb25zb2xlTG9nZ2luZ0ludGVncmF0aW9uID0gY29yZS5jb25zb2xlTG9nZ2luZ0ludGVncmF0aW9uO1xuZXhwb3J0cy5jb250aW51ZVRyYWNlID0gY29yZS5jb250aW51ZVRyYWNlO1xuZXhwb3J0cy5jcmVhdGVDb25zb2xhUmVwb3J0ZXIgPSBjb3JlLmNyZWF0ZUNvbnNvbGFSZXBvcnRlcjtcbmV4cG9ydHMuY3JlYXRlTGFuZ0NoYWluQ2FsbGJhY2tIYW5kbGVyID0gY29yZS5jcmVhdGVMYW5nQ2hhaW5DYWxsYmFja0hhbmRsZXI7XG5leHBvcnRzLmNyZWF0ZVRyYW5zcG9ydCA9IGNvcmUuY3JlYXRlVHJhbnNwb3J0O1xuZXhwb3J0cy5kZWR1cGVJbnRlZ3JhdGlvbiA9IGNvcmUuZGVkdXBlSW50ZWdyYXRpb247XG5leHBvcnRzLmVuZFNlc3Npb24gPSBjb3JlLmVuZFNlc3Npb247XG5leHBvcnRzLmV2ZW50RmlsdGVyc0ludGVncmF0aW9uID0gY29yZS5ldmVudEZpbHRlcnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZXh0cmFFcnJvckRhdGFJbnRlZ3JhdGlvbiA9IGNvcmUuZXh0cmFFcnJvckRhdGFJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuZmVhdHVyZUZsYWdzSW50ZWdyYXRpb24gPSBjb3JlLmZlYXR1cmVGbGFnc0ludGVncmF0aW9uO1xuZXhwb3J0cy5mbHVzaCA9IGNvcmUuZmx1c2g7XG5leHBvcnRzLmZ1bmN0aW9uVG9TdHJpbmdJbnRlZ3JhdGlvbiA9IGNvcmUuZnVuY3Rpb25Ub1N0cmluZ0ludGVncmF0aW9uO1xuZXhwb3J0cy5nZXRBY3RpdmVTcGFuID0gY29yZS5nZXRBY3RpdmVTcGFuO1xuZXhwb3J0cy5nZXRDbGllbnQgPSBjb3JlLmdldENsaWVudDtcbmV4cG9ydHMuZ2V0Q3VycmVudFNjb3BlID0gY29yZS5nZXRDdXJyZW50U2NvcGU7XG5leHBvcnRzLmdldEdsb2JhbFNjb3BlID0gY29yZS5nZXRHbG9iYWxTY29wZTtcbmV4cG9ydHMuZ2V0SXNvbGF0aW9uU2NvcGUgPSBjb3JlLmdldElzb2xhdGlvblNjb3BlO1xuZXhwb3J0cy5nZXRSb290U3BhbiA9IGNvcmUuZ2V0Um9vdFNwYW47XG5leHBvcnRzLmdldFNwYW5EZXNjZW5kYW50cyA9IGNvcmUuZ2V0U3BhbkRlc2NlbmRhbnRzO1xuZXhwb3J0cy5nZXRTcGFuU3RhdHVzRnJvbUh0dHBDb2RlID0gY29yZS5nZXRTcGFuU3RhdHVzRnJvbUh0dHBDb2RlO1xuZXhwb3J0cy5nZXRUcmFjZURhdGEgPSBjb3JlLmdldFRyYWNlRGF0YTtcbmV4cG9ydHMuZ2V0VHJhY2VNZXRhVGFncyA9IGNvcmUuZ2V0VHJhY2VNZXRhVGFncztcbmV4cG9ydHMuaHR0cEhlYWRlcnNUb1NwYW5BdHRyaWJ1dGVzID0gY29yZS5odHRwSGVhZGVyc1RvU3BhbkF0dHJpYnV0ZXM7XG5leHBvcnRzLmluYm91bmRGaWx0ZXJzSW50ZWdyYXRpb24gPSBjb3JlLmluYm91bmRGaWx0ZXJzSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRBbnRocm9waWNBaUNsaWVudCA9IGNvcmUuaW5zdHJ1bWVudEFudGhyb3BpY0FpQ2xpZW50O1xuZXhwb3J0cy5pbnN0cnVtZW50R29vZ2xlR2VuQUlDbGllbnQgPSBjb3JlLmluc3RydW1lbnRHb29nbGVHZW5BSUNsaWVudDtcbmV4cG9ydHMuaW5zdHJ1bWVudExhbmdHcmFwaCA9IGNvcmUuaW5zdHJ1bWVudExhbmdHcmFwaDtcbmV4cG9ydHMuaW5zdHJ1bWVudE9wZW5BaUNsaWVudCA9IGNvcmUuaW5zdHJ1bWVudE9wZW5BaUNsaWVudDtcbmV4cG9ydHMuaW5zdHJ1bWVudFN0YXRlR3JhcGhDb21waWxlID0gY29yZS5pbnN0cnVtZW50U3RhdGVHcmFwaENvbXBpbGU7XG5leHBvcnRzLmluc3RydW1lbnRTdXBhYmFzZUNsaWVudCA9IGNvcmUuaW5zdHJ1bWVudFN1cGFiYXNlQ2xpZW50O1xuZXhwb3J0cy5pc0VuYWJsZWQgPSBjb3JlLmlzRW5hYmxlZDtcbmV4cG9ydHMuaXNJbml0aWFsaXplZCA9IGNvcmUuaXNJbml0aWFsaXplZDtcbmV4cG9ydHMubGFzdEV2ZW50SWQgPSBjb3JlLmxhc3RFdmVudElkO1xuZXhwb3J0cy5saW5rZWRFcnJvcnNJbnRlZ3JhdGlvbiA9IGNvcmUubGlua2VkRXJyb3JzSW50ZWdyYXRpb247XG5leHBvcnRzLnBhcmFtZXRlcml6ZSA9IGNvcmUucGFyYW1ldGVyaXplO1xuZXhwb3J0cy5wcm9maWxlciA9IGNvcmUucHJvZmlsZXI7XG5leHBvcnRzLnJlcXVlc3REYXRhSW50ZWdyYXRpb24gPSBjb3JlLnJlcXVlc3REYXRhSW50ZWdyYXRpb247XG5leHBvcnRzLnJld3JpdGVGcmFtZXNJbnRlZ3JhdGlvbiA9IGNvcmUucmV3cml0ZUZyYW1lc0ludGVncmF0aW9uO1xuZXhwb3J0cy5zZXRDb250ZXh0ID0gY29yZS5zZXRDb250ZXh0O1xuZXhwb3J0cy5zZXRDb252ZXJzYXRpb25JZCA9IGNvcmUuc2V0Q29udmVyc2F0aW9uSWQ7XG5leHBvcnRzLnNldEN1cnJlbnRDbGllbnQgPSBjb3JlLnNldEN1cnJlbnRDbGllbnQ7XG5leHBvcnRzLnNldEV4dHJhID0gY29yZS5zZXRFeHRyYTtcbmV4cG9ydHMuc2V0RXh0cmFzID0gY29yZS5zZXRFeHRyYXM7XG5leHBvcnRzLnNldEh0dHBTdGF0dXMgPSBjb3JlLnNldEh0dHBTdGF0dXM7XG5leHBvcnRzLnNldE1lYXN1cmVtZW50ID0gY29yZS5zZXRNZWFzdXJlbWVudDtcbmV4cG9ydHMuc2V0VGFnID0gY29yZS5zZXRUYWc7XG5leHBvcnRzLnNldFRhZ3MgPSBjb3JlLnNldFRhZ3M7XG5leHBvcnRzLnNldFVzZXIgPSBjb3JlLnNldFVzZXI7XG5leHBvcnRzLnNwYW5Ub0JhZ2dhZ2VIZWFkZXIgPSBjb3JlLnNwYW5Ub0JhZ2dhZ2VIZWFkZXI7XG5leHBvcnRzLnNwYW5Ub0pTT04gPSBjb3JlLnNwYW5Ub0pTT047XG5leHBvcnRzLnNwYW5Ub1RyYWNlSGVhZGVyID0gY29yZS5zcGFuVG9UcmFjZUhlYWRlcjtcbmV4cG9ydHMuc3RhcnRJbmFjdGl2ZVNwYW4gPSBjb3JlLnN0YXJ0SW5hY3RpdmVTcGFuO1xuZXhwb3J0cy5zdGFydE5ld1RyYWNlID0gY29yZS5zdGFydE5ld1RyYWNlO1xuZXhwb3J0cy5zdGFydFNlc3Npb24gPSBjb3JlLnN0YXJ0U2Vzc2lvbjtcbmV4cG9ydHMuc3RhcnRTcGFuID0gY29yZS5zdGFydFNwYW47XG5leHBvcnRzLnN0YXJ0U3Bhbk1hbnVhbCA9IGNvcmUuc3RhcnRTcGFuTWFudWFsO1xuZXhwb3J0cy5zdXBhYmFzZUludGVncmF0aW9uID0gY29yZS5zdXBhYmFzZUludGVncmF0aW9uO1xuZXhwb3J0cy5zdXBwcmVzc1RyYWNpbmcgPSBjb3JlLnN1cHByZXNzVHJhY2luZztcbmV4cG9ydHMudHJwY01pZGRsZXdhcmUgPSBjb3JlLnRycGNNaWRkbGV3YXJlO1xuZXhwb3J0cy51cGRhdGVTcGFuTmFtZSA9IGNvcmUudXBkYXRlU3Bhbk5hbWU7XG5leHBvcnRzLndpbnRlckNHSGVhZGVyc1RvRGljdCA9IGNvcmUud2ludGVyQ0dIZWFkZXJzVG9EaWN0O1xuZXhwb3J0cy53aXRoQWN0aXZlU3BhbiA9IGNvcmUud2l0aEFjdGl2ZVNwYW47XG5leHBvcnRzLndpdGhJc29sYXRpb25TY29wZSA9IGNvcmUud2l0aElzb2xhdGlvblNjb3BlO1xuZXhwb3J0cy53aXRoTW9uaXRvciA9IGNvcmUud2l0aE1vbml0b3I7XG5leHBvcnRzLndpdGhTY29wZSA9IGNvcmUud2l0aFNjb3BlO1xuZXhwb3J0cy53cmFwTWNwU2VydmVyV2l0aFNlbnRyeSA9IGNvcmUud3JhcE1jcFNlcnZlcldpdGhTZW50cnk7XG5leHBvcnRzLnpvZEVycm9yc0ludGVncmF0aW9uID0gY29yZS56b2RFcnJvcnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuTk9ERV9WRVJTSU9OID0gbm9kZUNvcmUuTk9ERV9WRVJTSU9OO1xuZXhwb3J0cy5Ob2RlQ2xpZW50ID0gbm9kZUNvcmUuTm9kZUNsaWVudDtcbmV4cG9ydHMuU2VudHJ5Q29udGV4dE1hbmFnZXIgPSBub2RlQ29yZS5TZW50cnlDb250ZXh0TWFuYWdlcjtcbmV4cG9ydHMuYW5ySW50ZWdyYXRpb24gPSBub2RlQ29yZS5hbnJJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY2hpbGRQcm9jZXNzSW50ZWdyYXRpb24gPSBub2RlQ29yZS5jaGlsZFByb2Nlc3NJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY29udGV4dExpbmVzSW50ZWdyYXRpb24gPSBub2RlQ29yZS5jb250ZXh0TGluZXNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuY3JlYXRlR2V0TW9kdWxlRnJvbUZpbGVuYW1lID0gbm9kZUNvcmUuY3JlYXRlR2V0TW9kdWxlRnJvbUZpbGVuYW1lO1xuZXhwb3J0cy5jcmVhdGVTZW50cnlXaW5zdG9uVHJhbnNwb3J0ID0gbm9kZUNvcmUuY3JlYXRlU2VudHJ5V2luc3RvblRyYW5zcG9ydDtcbmV4cG9ydHMuY3JvbiA9IG5vZGVDb3JlLmNyb247XG5leHBvcnRzLmRlZmF1bHRTdGFja1BhcnNlciA9IG5vZGVDb3JlLmRlZmF1bHRTdGFja1BhcnNlcjtcbmV4cG9ydHMuZGlzYWJsZUFuckRldGVjdGlvbkZvckNhbGxiYWNrID0gbm9kZUNvcmUuZGlzYWJsZUFuckRldGVjdGlvbkZvckNhbGxiYWNrO1xuZXhwb3J0cy5nZW5lcmF0ZUluc3RydW1lbnRPbmNlID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZTtcbmV4cG9ydHMuZ2V0U2VudHJ5UmVsZWFzZSA9IG5vZGVDb3JlLmdldFNlbnRyeVJlbGVhc2U7XG5leHBvcnRzLmh0dHBTZXJ2ZXJJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLmh0dHBTZXJ2ZXJJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaHR0cFNlcnZlclNwYW5zSW50ZWdyYXRpb24gPSBub2RlQ29yZS5odHRwU2VydmVyU3BhbnNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMubG9jYWxWYXJpYWJsZXNJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLmxvY2FsVmFyaWFibGVzSW50ZWdyYXRpb247XG5leHBvcnRzLmxvZ2dlciA9IG5vZGVDb3JlLmxvZ2dlcjtcbmV4cG9ydHMubWFrZU5vZGVUcmFuc3BvcnQgPSBub2RlQ29yZS5tYWtlTm9kZVRyYW5zcG9ydDtcbmV4cG9ydHMubWV0cmljcyA9IG5vZGVDb3JlLm1ldHJpY3M7XG5leHBvcnRzLm1vZHVsZXNJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm1vZHVsZXNJbnRlZ3JhdGlvbjtcbmV4cG9ydHMubm9kZUNvbnRleHRJbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm5vZGVDb250ZXh0SW50ZWdyYXRpb247XG5leHBvcnRzLm5vZGVSdW50aW1lTWV0cmljc0ludGVncmF0aW9uID0gbm9kZUNvcmUubm9kZVJ1bnRpbWVNZXRyaWNzSW50ZWdyYXRpb247XG5leHBvcnRzLm9uVW5jYXVnaHRFeGNlcHRpb25JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm9uVW5jYXVnaHRFeGNlcHRpb25JbnRlZ3JhdGlvbjtcbmV4cG9ydHMub25VbmhhbmRsZWRSZWplY3Rpb25JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLm9uVW5oYW5kbGVkUmVqZWN0aW9uSW50ZWdyYXRpb247XG5leHBvcnRzLnBpbm9JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLnBpbm9JbnRlZ3JhdGlvbjtcbmV4cG9ydHMucHJvY2Vzc1Nlc3Npb25JbnRlZ3JhdGlvbiA9IG5vZGVDb3JlLnByb2Nlc3NTZXNzaW9uSW50ZWdyYXRpb247XG5leHBvcnRzLnNwb3RsaWdodEludGVncmF0aW9uID0gbm9kZUNvcmUuc3BvdGxpZ2h0SW50ZWdyYXRpb247XG5leHBvcnRzLnN5c3RlbUVycm9ySW50ZWdyYXRpb24gPSBub2RlQ29yZS5zeXN0ZW1FcnJvckludGVncmF0aW9uO1xuZXhwb3J0cy52YWxpZGF0ZU9wZW5UZWxlbWV0cnlTZXR1cCA9IG5vZGVDb3JlLnZhbGlkYXRlT3BlblRlbGVtZXRyeVNldHVwO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js":
/*!*********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js ***!
\*********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * Re-export the core GrowthBook integration for Node.js usage.\n * The core integration is runtime-agnostic and works in both browser and Node environments.\n */\nconst growthbookIntegrationShim = core.growthbookIntegration;\n\nexports.growthbookIntegrationShim = growthbookIntegrationShim;\n//# sourceMappingURL=growthbook.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvZ3Jvd3RoYm9vay5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsaUNBQWlDO0FBQ2pDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy9mZWF0dXJlRmxhZ1NoaW1zL2dyb3d0aGJvb2suanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcblxuLyoqXG4gKiBSZS1leHBvcnQgdGhlIGNvcmUgR3Jvd3RoQm9vayBpbnRlZ3JhdGlvbiBmb3IgTm9kZS5qcyB1c2FnZS5cbiAqIFRoZSBjb3JlIGludGVncmF0aW9uIGlzIHJ1bnRpbWUtYWdub3N0aWMgYW5kIHdvcmtzIGluIGJvdGggYnJvd3NlciBhbmQgTm9kZSBlbnZpcm9ubWVudHMuXG4gKi9cbmNvbnN0IGdyb3d0aGJvb2tJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmdyb3d0aGJvb2tJbnRlZ3JhdGlvbjtcblxuZXhwb3J0cy5ncm93dGhib29rSW50ZWdyYXRpb25TaGltID0gZ3Jvd3RoYm9va0ludGVncmF0aW9uU2hpbTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdyb3d0aGJvb2suanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/growthbook.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js":
/*!***********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js ***!
\***********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the LaunchDarkly integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst launchDarklyIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The launchDarklyIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'LaunchDarkly',\n };\n});\n\n/**\n * This is a shim for the LaunchDarkly flag used handler.\n */\nfunction buildLaunchDarklyFlagUsedHandlerShim() {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The buildLaunchDarklyFlagUsedHandler() can only be used in the browser.');\n });\n }\n\n return {\n name: 'sentry-flag-auditor',\n type: 'flag-used',\n synchronous: true,\n method: () => null,\n };\n}\n\nexports.buildLaunchDarklyFlagUsedHandlerShim = buildLaunchDarklyFlagUsedHandlerShim;\nexports.launchDarklyIntegrationShim = launchDarklyIntegrationShim;\n//# sourceMappingURL=launchDarkly.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvbGF1bmNoRGFya2x5LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYzs7QUFFbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0Q0FBNEM7QUFDNUMsbUNBQW1DO0FBQ25DIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy9mZWF0dXJlRmxhZ1NoaW1zL2xhdW5jaERhcmtseS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGltIGZvciB0aGUgTGF1bmNoRGFya2x5IGludGVncmF0aW9uLlxuICogV2UgbmVlZCB0aGlzIGluIG9yZGVyIHRvIG5vdCB0aHJvdyBydW50aW1lIGVycm9ycyB3aGVuIGFjY2lkZW50YWxseSBpbXBvcnRpbmcgdGhpcyBvbiB0aGUgc2VydmVyIHRocm91Z2ggYSBtZXRhIGZyYW1ld29yayBsaWtlIE5leHQuanMuXG4gKi9cbmNvbnN0IGxhdW5jaERhcmtseUludGVncmF0aW9uU2hpbSA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oKF9vcHRpb25zKSA9PiB7XG4gIGlmICghY29yZS5pc0Jyb3dzZXIoKSkge1xuICAgIGNvcmUuY29uc29sZVNhbmRib3goKCkgPT4ge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIGNvbnNvbGUud2FybignVGhlIGxhdW5jaERhcmtseUludGVncmF0aW9uKCkgY2FuIG9ubHkgYmUgdXNlZCBpbiB0aGUgYnJvd3Nlci4nKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbmFtZTogJ0xhdW5jaERhcmtseScsXG4gIH07XG59KTtcblxuLyoqXG4gKiBUaGlzIGlzIGEgc2hpbSBmb3IgdGhlIExhdW5jaERhcmtseSBmbGFnIHVzZWQgaGFuZGxlci5cbiAqL1xuZnVuY3Rpb24gYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltKCkge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBidWlsZExhdW5jaERhcmtseUZsYWdVc2VkSGFuZGxlcigpIGNhbiBvbmx5IGJlIHVzZWQgaW4gdGhlIGJyb3dzZXIuJyk7XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIG5hbWU6ICdzZW50cnktZmxhZy1hdWRpdG9yJyxcbiAgICB0eXBlOiAnZmxhZy11c2VkJyxcbiAgICBzeW5jaHJvbm91czogdHJ1ZSxcbiAgICBtZXRob2Q6ICgpID0+IG51bGwsXG4gIH07XG59XG5cbmV4cG9ydHMuYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltID0gYnVpbGRMYXVuY2hEYXJrbHlGbGFnVXNlZEhhbmRsZXJTaGltO1xuZXhwb3J0cy5sYXVuY2hEYXJrbHlJbnRlZ3JhdGlvblNoaW0gPSBsYXVuY2hEYXJrbHlJbnRlZ3JhdGlvblNoaW07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1sYXVuY2hEYXJrbHkuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/launchDarkly.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the OpenFeature integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst openFeatureIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The openFeatureIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'OpenFeature',\n };\n});\n\n/**\n * This is a shim for the OpenFeature integration hook.\n */\nclass OpenFeatureIntegrationHookShim {\n /**\n *\n */\n constructor() {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The OpenFeatureIntegrationHook can only be used in the browser.');\n });\n }\n }\n\n /**\n *\n */\n after() {\n // No-op\n }\n\n /**\n *\n */\n error() {\n // No-op\n }\n}\n\nexports.OpenFeatureIntegrationHookShim = OpenFeatureIntegrationHookShim;\nexports.openFeatureIntegrationShim = openFeatureIntegrationShim;\n//# sourceMappingURL=openFeature.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvb3BlbkZlYXR1cmUuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjOztBQUVuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0NBQXNDO0FBQ3RDLGtDQUFrQztBQUNsQyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9vcGVuRmVhdHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGltIGZvciB0aGUgT3BlbkZlYXR1cmUgaW50ZWdyYXRpb24uXG4gKiBXZSBuZWVkIHRoaXMgaW4gb3JkZXIgdG8gbm90IHRocm93IHJ1bnRpbWUgZXJyb3JzIHdoZW4gYWNjaWRlbnRhbGx5IGltcG9ydGluZyB0aGlzIG9uIHRoZSBzZXJ2ZXIgdGhyb3VnaCBhIG1ldGEgZnJhbWV3b3JrIGxpa2UgTmV4dC5qcy5cbiAqL1xuY29uc3Qgb3BlbkZlYXR1cmVJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChfb3B0aW9ucykgPT4ge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBvcGVuRmVhdHVyZUludGVncmF0aW9uKCkgY2FuIG9ubHkgYmUgdXNlZCBpbiB0aGUgYnJvd3Nlci4nKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgbmFtZTogJ09wZW5GZWF0dXJlJyxcbiAgfTtcbn0pO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGltIGZvciB0aGUgT3BlbkZlYXR1cmUgaW50ZWdyYXRpb24gaG9vay5cbiAqL1xuY2xhc3MgT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltIHtcbiAgLyoqXG4gICAqXG4gICAqL1xuICAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFjb3JlLmlzQnJvd3NlcigpKSB7XG4gICAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgY29uc29sZS53YXJuKCdUaGUgT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2sgY2FuIG9ubHkgYmUgdXNlZCBpbiB0aGUgYnJvd3Nlci4nKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKi9cbiAgIGFmdGVyKCkge1xuICAgIC8vIE5vLW9wXG4gIH1cblxuICAvKipcbiAgICpcbiAgICovXG4gICBlcnJvcigpIHtcbiAgICAvLyBOby1vcFxuICB9XG59XG5cbmV4cG9ydHMuT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltID0gT3BlbkZlYXR1cmVJbnRlZ3JhdGlvbkhvb2tTaGltO1xuZXhwb3J0cy5vcGVuRmVhdHVyZUludGVncmF0aW9uU2hpbSA9IG9wZW5GZWF0dXJlSW50ZWdyYXRpb25TaGltO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9b3BlbkZlYXR1cmUuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/openFeature.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the Statsig integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst statsigIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The statsigIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'Statsig',\n };\n});\n\nexports.statsigIntegrationShim = statsigIntegrationShim;\n//# sourceMappingURL=statsig.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvc3RhdHNpZy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVELDhCQUE4QjtBQUM5QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy9zdGF0c2lnLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5cbi8qKlxuICogVGhpcyBpcyBhIHNoaW0gZm9yIHRoZSBTdGF0c2lnIGludGVncmF0aW9uLlxuICogV2UgbmVlZCB0aGlzIGluIG9yZGVyIHRvIG5vdCB0aHJvdyBydW50aW1lIGVycm9ycyB3aGVuIGFjY2lkZW50YWxseSBpbXBvcnRpbmcgdGhpcyBvbiB0aGUgc2VydmVyIHRocm91Z2ggYSBtZXRhIGZyYW1ld29yayBsaWtlIE5leHQuanMuXG4gKi9cbmNvbnN0IHN0YXRzaWdJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChfb3B0aW9ucykgPT4ge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBzdGF0c2lnSW50ZWdyYXRpb24oKSBjYW4gb25seSBiZSB1c2VkIGluIHRoZSBicm93c2VyLicpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnU3RhdHNpZycsXG4gIH07XG59KTtcblxuZXhwb3J0cy5zdGF0c2lnSW50ZWdyYXRpb25TaGltID0gc3RhdHNpZ0ludGVncmF0aW9uU2hpbTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0YXRzaWcuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/statsig.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\n/**\n * This is a shim for the Unleash integration.\n * We need this in order to not throw runtime errors when accidentally importing this on the server through a meta framework like Next.js.\n */\nconst unleashIntegrationShim = core.defineIntegration((_options) => {\n if (!core.isBrowser()) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn('The unleashIntegration() can only be used in the browser.');\n });\n }\n\n return {\n name: 'Unleash',\n };\n});\n\nexports.unleashIntegrationShim = unleashIntegrationShim;\n//# sourceMappingURL=unleash.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZlYXR1cmVGbGFnU2hpbXMvdW5sZWFzaC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVELDhCQUE4QjtBQUM5QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZmVhdHVyZUZsYWdTaGltcy91bmxlYXNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5cbi8qKlxuICogVGhpcyBpcyBhIHNoaW0gZm9yIHRoZSBVbmxlYXNoIGludGVncmF0aW9uLlxuICogV2UgbmVlZCB0aGlzIGluIG9yZGVyIHRvIG5vdCB0aHJvdyBydW50aW1lIGVycm9ycyB3aGVuIGFjY2lkZW50YWxseSBpbXBvcnRpbmcgdGhpcyBvbiB0aGUgc2VydmVyIHRocm91Z2ggYSBtZXRhIGZyYW1ld29yayBsaWtlIE5leHQuanMuXG4gKi9cbmNvbnN0IHVubGVhc2hJbnRlZ3JhdGlvblNoaW0gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChfb3B0aW9ucykgPT4ge1xuICBpZiAoIWNvcmUuaXNCcm93c2VyKCkpIHtcbiAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSB1bmxlYXNoSW50ZWdyYXRpb24oKSBjYW4gb25seSBiZSB1c2VkIGluIHRoZSBicm93c2VyLicpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnVW5sZWFzaCcsXG4gIH07XG59KTtcblxuZXhwb3J0cy51bmxlYXNoSW50ZWdyYXRpb25TaGltID0gdW5sZWFzaEludGVncmF0aW9uU2hpbTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXVubGVhc2guanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/featureFlagShims/unleash.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js":
/*!********************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js ***!
\********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationFs = __webpack_require__(/*! @opentelemetry/instrumentation-fs */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-fs@0.33.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-fs/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'FileSystem';\n\n/**\n * This integration will create spans for `fs` API operations, like reading and writing files.\n *\n * **WARNING:** This integration may add significant overhead to your application. Especially in scenarios with a lot of\n * file I/O, like for example when running a framework dev server, including this integration can massively slow down\n * your application.\n *\n * @param options Configuration for this integration.\n */\nconst fsIntegration = core.defineIntegration(\n (\n options\n\n = {},\n ) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationFs.FsInstrumentation({\n requireParentSpan: true,\n endHook(functionName, { args, span, error }) {\n span.updateName(`fs.${functionName}`);\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'file',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.file.fs',\n });\n\n if (options.recordErrorMessagesAsSpanAttributes) {\n if (typeof args[0] === 'string' && FS_OPERATIONS_WITH_PATH_ARG.includes(functionName)) {\n span.setAttribute('path_argument', args[0]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_TARGET_PATH.includes(functionName)\n ) {\n span.setAttribute('target_argument', args[0]);\n span.setAttribute('path_argument', args[1]);\n } else if (typeof args[0] === 'string' && FS_OPERATIONS_WITH_PREFIX.includes(functionName)) {\n span.setAttribute('prefix_argument', args[0]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_EXISTING_PATH_NEW_PATH.includes(functionName)\n ) {\n span.setAttribute('existing_path_argument', args[0]);\n span.setAttribute('new_path_argument', args[1]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_SRC_DEST.includes(functionName)\n ) {\n span.setAttribute('src_argument', args[0]);\n span.setAttribute('dest_argument', args[1]);\n } else if (\n typeof args[0] === 'string' &&\n typeof args[1] === 'string' &&\n FS_OPERATIONS_WITH_OLD_PATH_NEW_PATH.includes(functionName)\n ) {\n span.setAttribute('old_path_argument', args[0]);\n span.setAttribute('new_path_argument', args[1]);\n }\n }\n\n if (error && options.recordErrorMessagesAsSpanAttributes) {\n span.setAttribute('fs_error', error.message);\n }\n },\n }),\n )();\n },\n };\n },\n);\n\nconst FS_OPERATIONS_WITH_OLD_PATH_NEW_PATH = ['rename', 'renameSync'];\nconst FS_OPERATIONS_WITH_SRC_DEST = ['copyFile', 'cp', 'copyFileSync', 'cpSync'];\nconst FS_OPERATIONS_WITH_EXISTING_PATH_NEW_PATH = ['link', 'linkSync'];\nconst FS_OPERATIONS_WITH_PREFIX = ['mkdtemp', 'mkdtempSync'];\nconst FS_OPERATIONS_WITH_TARGET_PATH = ['symlink', 'symlinkSync'];\nconst FS_OPERATIONS_WITH_PATH_ARG = [\n 'access',\n 'appendFile',\n 'chmod',\n 'chown',\n 'exists',\n 'mkdir',\n 'lchown',\n 'lstat',\n 'lutimes',\n 'open',\n 'opendir',\n 'readdir',\n 'readFile',\n 'readlink',\n 'realpath',\n 'realpath.native',\n 'rm',\n 'rmdir',\n 'stat',\n 'truncate',\n 'unlink',\n 'utimes',\n 'writeFile',\n 'accessSync',\n 'appendFileSync',\n 'chmodSync',\n 'chownSync',\n 'existsSync',\n 'lchownSync',\n 'lstatSync',\n 'lutimesSync',\n 'opendirSync',\n 'mkdirSync',\n 'openSync',\n 'readdirSync',\n 'readFileSync',\n 'readlinkSync',\n 'realpathSync',\n 'realpathSync.native',\n 'rmdirSync',\n 'rmSync',\n 'statSync',\n 'truncateSync',\n 'unlinkSync',\n 'utimesSync',\n 'writeFileSync',\n];\n\nexports.fsIntegration = fsIntegration;\n//# sourceMappingURL=fs.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2ZzLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLDBCQUEwQixtQkFBTyxDQUFDLHlNQUFtQztBQUNyRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1COztBQUU1Qzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyxtQkFBbUI7QUFDekQsc0NBQXNDLGFBQWE7O0FBRW5EO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjs7QUFFakI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQjtBQUNwQjtBQUNBLG9CQUFvQjtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmLGFBQWE7QUFDYjtBQUNBLE9BQU87QUFDUDtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHFCQUFxQjtBQUNyQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvZnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbkZzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWZzJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnRmlsZVN5c3RlbSc7XG5cbi8qKlxuICogVGhpcyBpbnRlZ3JhdGlvbiB3aWxsIGNyZWF0ZSBzcGFucyBmb3IgYGZzYCBBUEkgb3BlcmF0aW9ucywgbGlrZSByZWFkaW5nIGFuZCB3cml0aW5nIGZpbGVzLlxuICpcbiAqICoqV0FSTklORzoqKiBUaGlzIGludGVncmF0aW9uIG1heSBhZGQgc2lnbmlmaWNhbnQgb3ZlcmhlYWQgdG8geW91ciBhcHBsaWNhdGlvbi4gRXNwZWNpYWxseSBpbiBzY2VuYXJpb3Mgd2l0aCBhIGxvdCBvZlxuICogZmlsZSBJL08sIGxpa2UgZm9yIGV4YW1wbGUgd2hlbiBydW5uaW5nIGEgZnJhbWV3b3JrIGRldiBzZXJ2ZXIsIGluY2x1ZGluZyB0aGlzIGludGVncmF0aW9uIGNhbiBtYXNzaXZlbHkgc2xvdyBkb3duXG4gKiB5b3VyIGFwcGxpY2F0aW9uLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb24gZm9yIHRoaXMgaW50ZWdyYXRpb24uXG4gKi9cbmNvbnN0IGZzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKFxuICAoXG4gICAgb3B0aW9uc1xuXG4gPSB7fSxcbiAgKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgICBzZXR1cE9uY2UoKSB7XG4gICAgICAgIG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gICAgICAgICAgSU5URUdSQVRJT05fTkFNRSxcbiAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgbmV3IGluc3RydW1lbnRhdGlvbkZzLkZzSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgICAgICAgICAgcmVxdWlyZVBhcmVudFNwYW46IHRydWUsXG4gICAgICAgICAgICAgIGVuZEhvb2soZnVuY3Rpb25OYW1lLCB7IGFyZ3MsIHNwYW4sIGVycm9yIH0pIHtcbiAgICAgICAgICAgICAgICBzcGFuLnVwZGF0ZU5hbWUoYGZzLiR7ZnVuY3Rpb25OYW1lfWApO1xuXG4gICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiAnZmlsZScsXG4gICAgICAgICAgICAgICAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTl06ICdhdXRvLmZpbGUuZnMnLFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMucmVjb3JkRXJyb3JNZXNzYWdlc0FzU3BhbkF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycgJiYgRlNfT1BFUkFUSU9OU19XSVRIX1BBVEhfQVJHLmluY2x1ZGVzKGZ1bmN0aW9uTmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3BhdGhfYXJndW1lbnQnLCBhcmdzWzBdKTtcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICAgICAgICB0eXBlb2YgYXJnc1sxXSA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAgICAgRlNfT1BFUkFUSU9OU19XSVRIX1RBUkdFVF9QQVRILmluY2x1ZGVzKGZ1bmN0aW9uTmFtZSlcbiAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgndGFyZ2V0X2FyZ3VtZW50JywgYXJnc1swXSk7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKCdwYXRoX2FyZ3VtZW50JywgYXJnc1sxXSk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJyAmJiBGU19PUEVSQVRJT05TX1dJVEhfUFJFRklYLmluY2x1ZGVzKGZ1bmN0aW9uTmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3ByZWZpeF9hcmd1bWVudCcsIGFyZ3NbMF0pO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgICAgIHR5cGVvZiBhcmdzWzFdID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICAgICAgICBGU19PUEVSQVRJT05TX1dJVEhfRVhJU1RJTkdfUEFUSF9ORVdfUEFUSC5pbmNsdWRlcyhmdW5jdGlvbk5hbWUpXG4gICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ2V4aXN0aW5nX3BhdGhfYXJndW1lbnQnLCBhcmdzWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ25ld19wYXRoX2FyZ3VtZW50JywgYXJnc1sxXSk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgICAgICAgICB0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGFyZ3NbMV0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgICAgIEZTX09QRVJBVElPTlNfV0lUSF9TUkNfREVTVC5pbmNsdWRlcyhmdW5jdGlvbk5hbWUpXG4gICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3NyY19hcmd1bWVudCcsIGFyZ3NbMF0pO1xuICAgICAgICAgICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnZGVzdF9hcmd1bWVudCcsIGFyZ3NbMV0pO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgICAgICAgICAgdHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAgICAgICAgIHR5cGVvZiBhcmdzWzFdID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICAgICAgICBGU19PUEVSQVRJT05TX1dJVEhfT0xEX1BBVEhfTkVXX1BBVEguaW5jbHVkZXMoZnVuY3Rpb25OYW1lKVxuICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKCdvbGRfcGF0aF9hcmd1bWVudCcsIGFyZ3NbMF0pO1xuICAgICAgICAgICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnbmV3X3BhdGhfYXJndW1lbnQnLCBhcmdzWzFdKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoZXJyb3IgJiYgb3B0aW9ucy5yZWNvcmRFcnJvck1lc3NhZ2VzQXNTcGFuQXR0cmlidXRlcykge1xuICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ2ZzX2Vycm9yJywgZXJyb3IubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICkoKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfSxcbik7XG5cbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9PTERfUEFUSF9ORVdfUEFUSCA9IFsncmVuYW1lJywgJ3JlbmFtZVN5bmMnXTtcbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9TUkNfREVTVCA9IFsnY29weUZpbGUnLCAnY3AnLCAnY29weUZpbGVTeW5jJywgJ2NwU3luYyddO1xuY29uc3QgRlNfT1BFUkFUSU9OU19XSVRIX0VYSVNUSU5HX1BBVEhfTkVXX1BBVEggPSBbJ2xpbmsnLCAnbGlua1N5bmMnXTtcbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9QUkVGSVggPSBbJ21rZHRlbXAnLCAnbWtkdGVtcFN5bmMnXTtcbmNvbnN0IEZTX09QRVJBVElPTlNfV0lUSF9UQVJHRVRfUEFUSCA9IFsnc3ltbGluaycsICdzeW1saW5rU3luYyddO1xuY29uc3QgRlNfT1BFUkFUSU9OU19XSVRIX1BBVEhfQVJHID0gW1xuICAnYWNjZXNzJyxcbiAgJ2FwcGVuZEZpbGUnLFxuICAnY2htb2QnLFxuICAnY2hvd24nLFxuICAnZXhpc3RzJyxcbiAgJ21rZGlyJyxcbiAgJ2xjaG93bicsXG4gICdsc3RhdCcsXG4gICdsdXRpbWVzJyxcbiAgJ29wZW4nLFxuICAnb3BlbmRpcicsXG4gICdyZWFkZGlyJyxcbiAgJ3JlYWRGaWxlJyxcbiAgJ3JlYWRsaW5rJyxcbiAgJ3JlYWxwYXRoJyxcbiAgJ3JlYWxwYXRoLm5hdGl2ZScsXG4gICdybScsXG4gICdybWRpcicsXG4gICdzdGF0JyxcbiAgJ3RydW5jYXRlJyxcbiAgJ3VubGluaycsXG4gICd1dGltZXMnLFxuICAnd3JpdGVGaWxlJyxcbiAgJ2FjY2Vzc1N5bmMnLFxuICAnYXBwZW5kRmlsZVN5bmMnLFxuICAnY2htb2RTeW5jJyxcbiAgJ2Nob3duU3luYycsXG4gICdleGlzdHNTeW5jJyxcbiAgJ2xjaG93blN5bmMnLFxuICAnbHN0YXRTeW5jJyxcbiAgJ2x1dGltZXNTeW5jJyxcbiAgJ29wZW5kaXJTeW5jJyxcbiAgJ21rZGlyU3luYycsXG4gICdvcGVuU3luYycsXG4gICdyZWFkZGlyU3luYycsXG4gICdyZWFkRmlsZVN5bmMnLFxuICAncmVhZGxpbmtTeW5jJyxcbiAgJ3JlYWxwYXRoU3luYycsXG4gICdyZWFscGF0aFN5bmMubmF0aXZlJyxcbiAgJ3JtZGlyU3luYycsXG4gICdybVN5bmMnLFxuICAnc3RhdFN5bmMnLFxuICAndHJ1bmNhdGVTeW5jJyxcbiAgJ3VubGlua1N5bmMnLFxuICAndXRpbWVzU3luYycsXG4gICd3cml0ZUZpbGVTeW5jJyxcbl07XG5cbmV4cG9ydHMuZnNJbnRlZ3JhdGlvbiA9IGZzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1mcy5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/fs.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentationHttp = __webpack_require__(/*! @opentelemetry/instrumentation-http */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-http@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-http/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Http';\n\nconst INSTRUMENTATION_NAME = '@opentelemetry_sentry-patched/instrumentation-http';\n\n// The `http.client.request.created` diagnostics channel, needed for trace propagation,\n// was added in Node 22.12.0 (backported from 23.2.0). Earlier 22.x versions don't have it.\nconst FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL =\n (nodeCore.NODE_VERSION.major === 22 && nodeCore.NODE_VERSION.minor >= 12) ||\n (nodeCore.NODE_VERSION.major === 23 && nodeCore.NODE_VERSION.minor >= 2) ||\n nodeCore.NODE_VERSION.major >= 24;\n\nconst instrumentSentryHttp = nodeCore.generateInstrumentOnce(\n `${INTEGRATION_NAME}.sentry`,\n options => {\n return new nodeCore.SentryHttpInstrumentation(options);\n },\n);\n\nconst instrumentOtelHttp = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, config => {\n const instrumentation = new instrumentationHttp.HttpInstrumentation({\n ...config,\n // This is hard-coded and can never be overridden by the user\n disableIncomingRequestInstrumentation: true,\n });\n\n // We want to update the logger namespace so we can better identify what is happening here\n try {\n instrumentation['_diag'] = api.diag.createComponentLogger({\n namespace: INSTRUMENTATION_NAME,\n });\n // @ts-expect-error We are writing a read-only property here...\n instrumentation.instrumentationName = INSTRUMENTATION_NAME;\n } catch {\n // ignore errors here...\n }\n\n // The OTel HttpInstrumentation (>=0.213.0) has a guard (`_httpPatched`/`_httpsPatched`)\n // that prevents patching `http`/`https` when loaded by both CJS `require()` and ESM `import`.\n // In environments like AWS Lambda, the runtime loads `http` via CJS first (for the Runtime API),\n // and then the user's ESM handler imports `node:http`. The guard blocks ESM patching after CJS,\n // which breaks HTTP spans for ESM handlers. We disable this guard to allow both to be patched.\n // TODO(andrei): Remove once https://github.com/open-telemetry/opentelemetry-js/issues/6489 is fixed.\n try {\n const noopDescriptor = { get: () => false, set: () => {} };\n Object.defineProperty(instrumentation, '_httpPatched', noopDescriptor);\n Object.defineProperty(instrumentation, '_httpsPatched', noopDescriptor);\n } catch {\n // ignore errors here...\n }\n\n return instrumentation;\n});\n\n/** Exported only for tests. */\nfunction _shouldUseOtelHttpInstrumentation(\n options,\n clientOptions = {},\n) {\n // If `spans` is passed in, it takes precedence\n // Else, we by default emit spans, unless `skipOpenTelemetrySetup` is set to `true` or spans are not enabled\n if (typeof options.spans === 'boolean') {\n return options.spans;\n }\n\n if (clientOptions.skipOpenTelemetrySetup) {\n return false;\n }\n\n // IMPORTANT: We only disable span instrumentation when spans are not enabled _and_ we are on a Node version\n // that fully supports the necessary diagnostics channels for trace propagation\n if (!core.hasSpansEnabled(clientOptions) && FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL) {\n return false;\n }\n\n return true;\n}\n\n/**\n * The http integration instruments Node's internal http and https modules.\n * It creates breadcrumbs and spans for outgoing HTTP requests which will be attached to the currently active span.\n */\nconst httpIntegration = core.defineIntegration((options = {}) => {\n const spans = options.spans ?? true;\n const disableIncomingRequestSpans = options.disableIncomingRequestSpans;\n\n const serverOptions = {\n sessions: options.trackIncomingRequestsAsSessions,\n sessionFlushingDelayMS: options.sessionFlushingDelayMS,\n ignoreRequestBody: options.ignoreIncomingRequestBody,\n maxRequestBodySize: options.maxIncomingRequestBodySize,\n } ;\n\n const serverSpansOptions = {\n ignoreIncomingRequests: options.ignoreIncomingRequests,\n ignoreStaticAssets: options.ignoreStaticAssets,\n ignoreStatusCodes: options.dropSpansForIncomingRequestStatusCodes,\n instrumentation: options.instrumentation,\n onSpanCreated: options.incomingRequestSpanHook,\n } ;\n\n const server = nodeCore.httpServerIntegration(serverOptions);\n const serverSpans = nodeCore.httpServerSpansIntegration(serverSpansOptions);\n\n const enableServerSpans = spans && !disableIncomingRequestSpans;\n\n return {\n name: INTEGRATION_NAME,\n setup(client) {\n const clientOptions = client.getOptions();\n\n if (enableServerSpans && core.hasSpansEnabled(clientOptions)) {\n serverSpans.setup(client);\n }\n },\n setupOnce() {\n const clientOptions = (core.getClient()?.getOptions() || {}) ;\n const useOtelHttpInstrumentation = _shouldUseOtelHttpInstrumentation(options, clientOptions);\n\n server.setupOnce();\n\n const sentryHttpInstrumentationOptions = {\n breadcrumbs: options.breadcrumbs,\n propagateTraceInOutgoingRequests:\n typeof options.tracePropagation === 'boolean'\n ? options.tracePropagation\n : FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL || !useOtelHttpInstrumentation,\n createSpansForOutgoingRequests: FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL,\n spans: options.spans,\n ignoreOutgoingRequests: options.ignoreOutgoingRequests,\n outgoingRequestHook: (span, request) => {\n // Sanitize data URLs to prevent long base64 strings in span attributes\n const url = nodeCore.getRequestUrl(request);\n if (url.startsWith('data:')) {\n const sanitizedUrl = core.stripDataUrlContent(url);\n span.setAttribute('http.url', sanitizedUrl);\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_URL_FULL, sanitizedUrl);\n span.updateName(`${request.method || 'GET'} ${sanitizedUrl}`);\n }\n\n options.instrumentation?.requestHook?.(span, request);\n },\n outgoingResponseHook: options.instrumentation?.responseHook,\n outgoingRequestApplyCustomAttributes: options.instrumentation?.applyCustomAttributesOnSpan,\n } ;\n\n // This is Sentry-specific instrumentation for outgoing request breadcrumbs & trace propagation\n instrumentSentryHttp(sentryHttpInstrumentationOptions);\n\n // This is the \"regular\" OTEL instrumentation that emits outgoing request spans\n if (useOtelHttpInstrumentation) {\n const instrumentationConfig = getConfigWithDefaults(options);\n instrumentOtelHttp(instrumentationConfig);\n }\n },\n processEvent(event) {\n // Note: We always run this, even if spans are disabled\n // The reason being that e.g. the remix integration disables span creation here but still wants to use the ignore status codes option\n return serverSpans.processEvent(event);\n },\n };\n});\n\nfunction getConfigWithDefaults(options = {}) {\n const instrumentationConfig = {\n // This is handled by the SentryHttpInstrumentation on Node 22+\n disableOutgoingRequestInstrumentation: FULLY_SUPPORTS_HTTP_DIAGNOSTICS_CHANNEL,\n\n ignoreOutgoingRequestHook: request => {\n const url = nodeCore.getRequestUrl(request);\n\n if (!url) {\n return false;\n }\n\n const _ignoreOutgoingRequests = options.ignoreOutgoingRequests;\n if (_ignoreOutgoingRequests?.(url, request)) {\n return true;\n }\n\n return false;\n },\n\n requireParentforOutgoingSpans: false,\n requestHook: (span, req) => {\n nodeCore.addOriginToSpan(span, 'auto.http.otel.http');\n\n // Sanitize data URLs to prevent long base64 strings in span attributes\n const url = nodeCore.getRequestUrl(req );\n if (url.startsWith('data:')) {\n const sanitizedUrl = core.stripDataUrlContent(url);\n span.setAttribute('http.url', sanitizedUrl);\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_URL_FULL, sanitizedUrl);\n span.updateName(`${(req ).method || 'GET'} ${sanitizedUrl}`);\n }\n\n options.instrumentation?.requestHook?.(span, req);\n },\n responseHook: (span, res) => {\n options.instrumentation?.responseHook?.(span, res);\n },\n applyCustomAttributesOnSpan: (\n span,\n request,\n response,\n ) => {\n options.instrumentation?.applyCustomAttributesOnSpan?.(span, request, response);\n },\n } ;\n\n return instrumentationConfig;\n}\n\nexports._shouldUseOtelHttpInstrumentation = _shouldUseOtelHttpInstrumentation;\nexports.httpIntegration = httpIntegration;\nexports.instrumentOtelHttp = instrumentOtelHttp;\nexports.instrumentSentryHttp = instrumentSentryHttp;\n//# sourceMappingURL=http.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2h0dHAuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsWUFBWSxtQkFBTyxDQUFDLGtJQUFvQjtBQUN4Qyw0QkFBNEIsbUJBQU8sQ0FBQyxnTkFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsS0FBSyxpQkFBaUI7QUFDdEI7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBOztBQUVBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQSxvQkFBb0I7QUFDcEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0REFBNEQ7QUFDNUQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxpRUFBaUU7QUFDakU7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0IseUJBQXlCLEVBQUUsYUFBYTtBQUN2RTs7QUFFQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRCwyQ0FBMkM7QUFDM0M7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLHdCQUF3QixFQUFFLGFBQWE7QUFDbEU7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQSx5Q0FBeUM7QUFDekMsdUJBQXVCO0FBQ3ZCLDBCQUEwQjtBQUMxQiw0QkFBNEI7QUFDNUIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL2h0dHAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uSHR0cCA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1odHRwJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnSHR0cCc7XG5cbmNvbnN0IElOU1RSVU1FTlRBVElPTl9OQU1FID0gJ0BvcGVudGVsZW1ldHJ5X3NlbnRyeS1wYXRjaGVkL2luc3RydW1lbnRhdGlvbi1odHRwJztcblxuLy8gVGhlIGBodHRwLmNsaWVudC5yZXF1ZXN0LmNyZWF0ZWRgIGRpYWdub3N0aWNzIGNoYW5uZWwsIG5lZWRlZCBmb3IgdHJhY2UgcHJvcGFnYXRpb24sXG4vLyB3YXMgYWRkZWQgaW4gTm9kZSAyMi4xMi4wIChiYWNrcG9ydGVkIGZyb20gMjMuMi4wKS4gRWFybGllciAyMi54IHZlcnNpb25zIGRvbid0IGhhdmUgaXQuXG5jb25zdCBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwgPVxuICAobm9kZUNvcmUuTk9ERV9WRVJTSU9OLm1ham9yID09PSAyMiAmJiBub2RlQ29yZS5OT0RFX1ZFUlNJT04ubWlub3IgPj0gMTIpIHx8XG4gIChub2RlQ29yZS5OT0RFX1ZFUlNJT04ubWFqb3IgPT09IDIzICYmIG5vZGVDb3JlLk5PREVfVkVSU0lPTi5taW5vciA+PSAyKSB8fFxuICBub2RlQ29yZS5OT0RFX1ZFUlNJT04ubWFqb3IgPj0gMjQ7XG5cbmNvbnN0IGluc3RydW1lbnRTZW50cnlIdHRwID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgYCR7SU5URUdSQVRJT05fTkFNRX0uc2VudHJ5YCxcbiAgb3B0aW9ucyA9PiB7XG4gICAgcmV0dXJuIG5ldyBub2RlQ29yZS5TZW50cnlIdHRwSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpO1xuICB9LFxuKTtcblxuY29uc3QgaW5zdHJ1bWVudE90ZWxIdHRwID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShJTlRFR1JBVElPTl9OQU1FLCBjb25maWcgPT4ge1xuICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSBuZXcgaW5zdHJ1bWVudGF0aW9uSHR0cC5IdHRwSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAuLi5jb25maWcsXG4gICAgLy8gVGhpcyBpcyBoYXJkLWNvZGVkIGFuZCBjYW4gbmV2ZXIgYmUgb3ZlcnJpZGRlbiBieSB0aGUgdXNlclxuICAgIGRpc2FibGVJbmNvbWluZ1JlcXVlc3RJbnN0cnVtZW50YXRpb246IHRydWUsXG4gIH0pO1xuXG4gIC8vIFdlIHdhbnQgdG8gdXBkYXRlIHRoZSBsb2dnZXIgbmFtZXNwYWNlIHNvIHdlIGNhbiBiZXR0ZXIgaWRlbnRpZnkgd2hhdCBpcyBoYXBwZW5pbmcgaGVyZVxuICB0cnkge1xuICAgIGluc3RydW1lbnRhdGlvblsnX2RpYWcnXSA9IGFwaS5kaWFnLmNyZWF0ZUNvbXBvbmVudExvZ2dlcih7XG4gICAgICBuYW1lc3BhY2U6IElOU1RSVU1FTlRBVElPTl9OQU1FLFxuICAgIH0pO1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgV2UgYXJlIHdyaXRpbmcgYSByZWFkLW9ubHkgcHJvcGVydHkgaGVyZS4uLlxuICAgIGluc3RydW1lbnRhdGlvbi5pbnN0cnVtZW50YXRpb25OYW1lID0gSU5TVFJVTUVOVEFUSU9OX05BTUU7XG4gIH0gY2F0Y2gge1xuICAgIC8vIGlnbm9yZSBlcnJvcnMgaGVyZS4uLlxuICB9XG5cbiAgLy8gVGhlIE9UZWwgSHR0cEluc3RydW1lbnRhdGlvbiAoPj0wLjIxMy4wKSBoYXMgYSBndWFyZCAoYF9odHRwUGF0Y2hlZGAvYF9odHRwc1BhdGNoZWRgKVxuICAvLyB0aGF0IHByZXZlbnRzIHBhdGNoaW5nIGBodHRwYC9gaHR0cHNgIHdoZW4gbG9hZGVkIGJ5IGJvdGggQ0pTIGByZXF1aXJlKClgIGFuZCBFU00gYGltcG9ydGAuXG4gIC8vIEluIGVudmlyb25tZW50cyBsaWtlIEFXUyBMYW1iZGEsIHRoZSBydW50aW1lIGxvYWRzIGBodHRwYCB2aWEgQ0pTIGZpcnN0IChmb3IgdGhlIFJ1bnRpbWUgQVBJKSxcbiAgLy8gYW5kIHRoZW4gdGhlIHVzZXIncyBFU00gaGFuZGxlciBpbXBvcnRzIGBub2RlOmh0dHBgLiBUaGUgZ3VhcmQgYmxvY2tzIEVTTSBwYXRjaGluZyBhZnRlciBDSlMsXG4gIC8vIHdoaWNoIGJyZWFrcyBIVFRQIHNwYW5zIGZvciBFU00gaGFuZGxlcnMuIFdlIGRpc2FibGUgdGhpcyBndWFyZCB0byBhbGxvdyBib3RoIHRvIGJlIHBhdGNoZWQuXG4gIC8vIFRPRE8oYW5kcmVpKTogUmVtb3ZlIG9uY2UgaHR0cHM6Ly9naXRodWIuY29tL29wZW4tdGVsZW1ldHJ5L29wZW50ZWxlbWV0cnktanMvaXNzdWVzLzY0ODkgaXMgZml4ZWQuXG4gIHRyeSB7XG4gICAgY29uc3Qgbm9vcERlc2NyaXB0b3IgPSB7IGdldDogKCkgPT4gZmFsc2UsIHNldDogKCkgPT4ge30gfTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoaW5zdHJ1bWVudGF0aW9uLCAnX2h0dHBQYXRjaGVkJywgbm9vcERlc2NyaXB0b3IpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShpbnN0cnVtZW50YXRpb24sICdfaHR0cHNQYXRjaGVkJywgbm9vcERlc2NyaXB0b3IpO1xuICB9IGNhdGNoIHtcbiAgICAvLyBpZ25vcmUgZXJyb3JzIGhlcmUuLi5cbiAgfVxuXG4gIHJldHVybiBpbnN0cnVtZW50YXRpb247XG59KTtcblxuLyoqIEV4cG9ydGVkIG9ubHkgZm9yIHRlc3RzLiAqL1xuZnVuY3Rpb24gX3Nob3VsZFVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uKFxuICBvcHRpb25zLFxuICBjbGllbnRPcHRpb25zID0ge30sXG4pIHtcbiAgLy8gSWYgYHNwYW5zYCBpcyBwYXNzZWQgaW4sIGl0IHRha2VzIHByZWNlZGVuY2VcbiAgLy8gRWxzZSwgd2UgYnkgZGVmYXVsdCBlbWl0IHNwYW5zLCB1bmxlc3MgYHNraXBPcGVuVGVsZW1ldHJ5U2V0dXBgIGlzIHNldCB0byBgdHJ1ZWAgb3Igc3BhbnMgYXJlIG5vdCBlbmFibGVkXG4gIGlmICh0eXBlb2Ygb3B0aW9ucy5zcGFucyA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuc3BhbnM7XG4gIH1cblxuICBpZiAoY2xpZW50T3B0aW9ucy5za2lwT3BlblRlbGVtZXRyeVNldHVwKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gSU1QT1JUQU5UOiBXZSBvbmx5IGRpc2FibGUgc3BhbiBpbnN0cnVtZW50YXRpb24gd2hlbiBzcGFucyBhcmUgbm90IGVuYWJsZWQgX2FuZF8gd2UgYXJlIG9uIGEgTm9kZSB2ZXJzaW9uXG4gIC8vIHRoYXQgZnVsbHkgc3VwcG9ydHMgdGhlIG5lY2Vzc2FyeSBkaWFnbm9zdGljcyBjaGFubmVscyBmb3IgdHJhY2UgcHJvcGFnYXRpb25cbiAgaWYgKCFjb3JlLmhhc1NwYW5zRW5hYmxlZChjbGllbnRPcHRpb25zKSAmJiBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBUaGUgaHR0cCBpbnRlZ3JhdGlvbiBpbnN0cnVtZW50cyBOb2RlJ3MgaW50ZXJuYWwgaHR0cCBhbmQgaHR0cHMgbW9kdWxlcy5cbiAqIEl0IGNyZWF0ZXMgYnJlYWRjcnVtYnMgYW5kIHNwYW5zIGZvciBvdXRnb2luZyBIVFRQIHJlcXVlc3RzIHdoaWNoIHdpbGwgYmUgYXR0YWNoZWQgdG8gdGhlIGN1cnJlbnRseSBhY3RpdmUgc3Bhbi5cbiAqL1xuY29uc3QgaHR0cEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbigob3B0aW9ucyA9IHt9KSA9PiB7XG4gIGNvbnN0IHNwYW5zID0gb3B0aW9ucy5zcGFucyA/PyB0cnVlO1xuICBjb25zdCBkaXNhYmxlSW5jb21pbmdSZXF1ZXN0U3BhbnMgPSBvcHRpb25zLmRpc2FibGVJbmNvbWluZ1JlcXVlc3RTcGFucztcblxuICBjb25zdCBzZXJ2ZXJPcHRpb25zID0ge1xuICAgIHNlc3Npb25zOiBvcHRpb25zLnRyYWNrSW5jb21pbmdSZXF1ZXN0c0FzU2Vzc2lvbnMsXG4gICAgc2Vzc2lvbkZsdXNoaW5nRGVsYXlNUzogb3B0aW9ucy5zZXNzaW9uRmx1c2hpbmdEZWxheU1TLFxuICAgIGlnbm9yZVJlcXVlc3RCb2R5OiBvcHRpb25zLmlnbm9yZUluY29taW5nUmVxdWVzdEJvZHksXG4gICAgbWF4UmVxdWVzdEJvZHlTaXplOiBvcHRpb25zLm1heEluY29taW5nUmVxdWVzdEJvZHlTaXplLFxuICB9IDtcblxuICBjb25zdCBzZXJ2ZXJTcGFuc09wdGlvbnMgPSB7XG4gICAgaWdub3JlSW5jb21pbmdSZXF1ZXN0czogb3B0aW9ucy5pZ25vcmVJbmNvbWluZ1JlcXVlc3RzLFxuICAgIGlnbm9yZVN0YXRpY0Fzc2V0czogb3B0aW9ucy5pZ25vcmVTdGF0aWNBc3NldHMsXG4gICAgaWdub3JlU3RhdHVzQ29kZXM6IG9wdGlvbnMuZHJvcFNwYW5zRm9ySW5jb21pbmdSZXF1ZXN0U3RhdHVzQ29kZXMsXG4gICAgaW5zdHJ1bWVudGF0aW9uOiBvcHRpb25zLmluc3RydW1lbnRhdGlvbixcbiAgICBvblNwYW5DcmVhdGVkOiBvcHRpb25zLmluY29taW5nUmVxdWVzdFNwYW5Ib29rLFxuICB9IDtcblxuICBjb25zdCBzZXJ2ZXIgPSBub2RlQ29yZS5odHRwU2VydmVySW50ZWdyYXRpb24oc2VydmVyT3B0aW9ucyk7XG4gIGNvbnN0IHNlcnZlclNwYW5zID0gbm9kZUNvcmUuaHR0cFNlcnZlclNwYW5zSW50ZWdyYXRpb24oc2VydmVyU3BhbnNPcHRpb25zKTtcblxuICBjb25zdCBlbmFibGVTZXJ2ZXJTcGFucyA9IHNwYW5zICYmICFkaXNhYmxlSW5jb21pbmdSZXF1ZXN0U3BhbnM7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwKGNsaWVudCkge1xuICAgICAgY29uc3QgY2xpZW50T3B0aW9ucyA9IGNsaWVudC5nZXRPcHRpb25zKCk7XG5cbiAgICAgIGlmIChlbmFibGVTZXJ2ZXJTcGFucyAmJiBjb3JlLmhhc1NwYW5zRW5hYmxlZChjbGllbnRPcHRpb25zKSkge1xuICAgICAgICBzZXJ2ZXJTcGFucy5zZXR1cChjbGllbnQpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgY29uc3QgY2xpZW50T3B0aW9ucyA9IChjb3JlLmdldENsaWVudCgpPy5nZXRPcHRpb25zKCkgfHwge30pIDtcbiAgICAgIGNvbnN0IHVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uID0gX3Nob3VsZFVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMsIGNsaWVudE9wdGlvbnMpO1xuXG4gICAgICBzZXJ2ZXIuc2V0dXBPbmNlKCk7XG5cbiAgICAgIGNvbnN0IHNlbnRyeUh0dHBJbnN0cnVtZW50YXRpb25PcHRpb25zID0ge1xuICAgICAgICBicmVhZGNydW1iczogb3B0aW9ucy5icmVhZGNydW1icyxcbiAgICAgICAgcHJvcGFnYXRlVHJhY2VJbk91dGdvaW5nUmVxdWVzdHM6XG4gICAgICAgICAgdHlwZW9mIG9wdGlvbnMudHJhY2VQcm9wYWdhdGlvbiA9PT0gJ2Jvb2xlYW4nXG4gICAgICAgICAgICA/IG9wdGlvbnMudHJhY2VQcm9wYWdhdGlvblxuICAgICAgICAgICAgOiBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwgfHwgIXVzZU90ZWxIdHRwSW5zdHJ1bWVudGF0aW9uLFxuICAgICAgICBjcmVhdGVTcGFuc0Zvck91dGdvaW5nUmVxdWVzdHM6IEZVTExZX1NVUFBPUlRTX0hUVFBfRElBR05PU1RJQ1NfQ0hBTk5FTCxcbiAgICAgICAgc3BhbnM6IG9wdGlvbnMuc3BhbnMsXG4gICAgICAgIGlnbm9yZU91dGdvaW5nUmVxdWVzdHM6IG9wdGlvbnMuaWdub3JlT3V0Z29pbmdSZXF1ZXN0cyxcbiAgICAgICAgb3V0Z29pbmdSZXF1ZXN0SG9vazogKHNwYW4sIHJlcXVlc3QpID0+IHtcbiAgICAgICAgICAvLyBTYW5pdGl6ZSBkYXRhIFVSTHMgdG8gcHJldmVudCBsb25nIGJhc2U2NCBzdHJpbmdzIGluIHNwYW4gYXR0cmlidXRlc1xuICAgICAgICAgIGNvbnN0IHVybCA9IG5vZGVDb3JlLmdldFJlcXVlc3RVcmwocmVxdWVzdCk7XG4gICAgICAgICAgaWYgKHVybC5zdGFydHNXaXRoKCdkYXRhOicpKSB7XG4gICAgICAgICAgICBjb25zdCBzYW5pdGl6ZWRVcmwgPSBjb3JlLnN0cmlwRGF0YVVybENvbnRlbnQodXJsKTtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKCdodHRwLnVybCcsIHNhbml0aXplZFVybCk7XG4gICAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9VUkxfRlVMTCwgc2FuaXRpemVkVXJsKTtcbiAgICAgICAgICAgIHNwYW4udXBkYXRlTmFtZShgJHtyZXF1ZXN0Lm1ldGhvZCB8fCAnR0VUJ30gJHtzYW5pdGl6ZWRVcmx9YCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgb3B0aW9ucy5pbnN0cnVtZW50YXRpb24/LnJlcXVlc3RIb29rPy4oc3BhbiwgcmVxdWVzdCk7XG4gICAgICAgIH0sXG4gICAgICAgIG91dGdvaW5nUmVzcG9uc2VIb29rOiBvcHRpb25zLmluc3RydW1lbnRhdGlvbj8ucmVzcG9uc2VIb29rLFxuICAgICAgICBvdXRnb2luZ1JlcXVlc3RBcHBseUN1c3RvbUF0dHJpYnV0ZXM6IG9wdGlvbnMuaW5zdHJ1bWVudGF0aW9uPy5hcHBseUN1c3RvbUF0dHJpYnV0ZXNPblNwYW4sXG4gICAgICB9IDtcblxuICAgICAgLy8gVGhpcyBpcyBTZW50cnktc3BlY2lmaWMgaW5zdHJ1bWVudGF0aW9uIGZvciBvdXRnb2luZyByZXF1ZXN0IGJyZWFkY3J1bWJzICYgdHJhY2UgcHJvcGFnYXRpb25cbiAgICAgIGluc3RydW1lbnRTZW50cnlIdHRwKHNlbnRyeUh0dHBJbnN0cnVtZW50YXRpb25PcHRpb25zKTtcblxuICAgICAgLy8gVGhpcyBpcyB0aGUgXCJyZWd1bGFyXCIgT1RFTCBpbnN0cnVtZW50YXRpb24gdGhhdCBlbWl0cyBvdXRnb2luZyByZXF1ZXN0IHNwYW5zXG4gICAgICBpZiAodXNlT3RlbEh0dHBJbnN0cnVtZW50YXRpb24pIHtcbiAgICAgICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uQ29uZmlnID0gZ2V0Q29uZmlnV2l0aERlZmF1bHRzKG9wdGlvbnMpO1xuICAgICAgICBpbnN0cnVtZW50T3RlbEh0dHAoaW5zdHJ1bWVudGF0aW9uQ29uZmlnKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHByb2Nlc3NFdmVudChldmVudCkge1xuICAgICAgLy8gTm90ZTogV2UgYWx3YXlzIHJ1biB0aGlzLCBldmVuIGlmIHNwYW5zIGFyZSBkaXNhYmxlZFxuICAgICAgLy8gVGhlIHJlYXNvbiBiZWluZyB0aGF0IGUuZy4gdGhlIHJlbWl4IGludGVncmF0aW9uIGRpc2FibGVzIHNwYW4gY3JlYXRpb24gaGVyZSBidXQgc3RpbGwgd2FudHMgdG8gdXNlIHRoZSBpZ25vcmUgc3RhdHVzIGNvZGVzIG9wdGlvblxuICAgICAgcmV0dXJuIHNlcnZlclNwYW5zLnByb2Nlc3NFdmVudChldmVudCk7XG4gICAgfSxcbiAgfTtcbn0pO1xuXG5mdW5jdGlvbiBnZXRDb25maWdXaXRoRGVmYXVsdHMob3B0aW9ucyA9IHt9KSB7XG4gIGNvbnN0IGluc3RydW1lbnRhdGlvbkNvbmZpZyA9IHtcbiAgICAvLyBUaGlzIGlzIGhhbmRsZWQgYnkgdGhlIFNlbnRyeUh0dHBJbnN0cnVtZW50YXRpb24gb24gTm9kZSAyMitcbiAgICBkaXNhYmxlT3V0Z29pbmdSZXF1ZXN0SW5zdHJ1bWVudGF0aW9uOiBGVUxMWV9TVVBQT1JUU19IVFRQX0RJQUdOT1NUSUNTX0NIQU5ORUwsXG5cbiAgICBpZ25vcmVPdXRnb2luZ1JlcXVlc3RIb29rOiByZXF1ZXN0ID0+IHtcbiAgICAgIGNvbnN0IHVybCA9IG5vZGVDb3JlLmdldFJlcXVlc3RVcmwocmVxdWVzdCk7XG5cbiAgICAgIGlmICghdXJsKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgX2lnbm9yZU91dGdvaW5nUmVxdWVzdHMgPSBvcHRpb25zLmlnbm9yZU91dGdvaW5nUmVxdWVzdHM7XG4gICAgICBpZiAoX2lnbm9yZU91dGdvaW5nUmVxdWVzdHM/Lih1cmwsIHJlcXVlc3QpKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSxcblxuICAgIHJlcXVpcmVQYXJlbnRmb3JPdXRnb2luZ1NwYW5zOiBmYWxzZSxcbiAgICByZXF1ZXN0SG9vazogKHNwYW4sIHJlcSkgPT4ge1xuICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmh0dHAub3RlbC5odHRwJyk7XG5cbiAgICAgIC8vIFNhbml0aXplIGRhdGEgVVJMcyB0byBwcmV2ZW50IGxvbmcgYmFzZTY0IHN0cmluZ3MgaW4gc3BhbiBhdHRyaWJ1dGVzXG4gICAgICBjb25zdCB1cmwgPSBub2RlQ29yZS5nZXRSZXF1ZXN0VXJsKHJlcSApO1xuICAgICAgaWYgKHVybC5zdGFydHNXaXRoKCdkYXRhOicpKSB7XG4gICAgICAgIGNvbnN0IHNhbml0aXplZFVybCA9IGNvcmUuc3RyaXBEYXRhVXJsQ29udGVudCh1cmwpO1xuICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnaHR0cC51cmwnLCBzYW5pdGl6ZWRVcmwpO1xuICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9VUkxfRlVMTCwgc2FuaXRpemVkVXJsKTtcbiAgICAgICAgc3Bhbi51cGRhdGVOYW1lKGAkeyhyZXEgKS5tZXRob2QgfHwgJ0dFVCd9ICR7c2FuaXRpemVkVXJsfWApO1xuICAgICAgfVxuXG4gICAgICBvcHRpb25zLmluc3RydW1lbnRhdGlvbj8ucmVxdWVzdEhvb2s/LihzcGFuLCByZXEpO1xuICAgIH0sXG4gICAgcmVzcG9uc2VIb29rOiAoc3BhbiwgcmVzKSA9PiB7XG4gICAgICBvcHRpb25zLmluc3RydW1lbnRhdGlvbj8ucmVzcG9uc2VIb29rPy4oc3BhbiwgcmVzKTtcbiAgICB9LFxuICAgIGFwcGx5Q3VzdG9tQXR0cmlidXRlc09uU3BhbjogKFxuICAgICAgc3BhbixcbiAgICAgIHJlcXVlc3QsXG4gICAgICByZXNwb25zZSxcbiAgICApID0+IHtcbiAgICAgIG9wdGlvbnMuaW5zdHJ1bWVudGF0aW9uPy5hcHBseUN1c3RvbUF0dHJpYnV0ZXNPblNwYW4/LihzcGFuLCByZXF1ZXN0LCByZXNwb25zZSk7XG4gICAgfSxcbiAgfSA7XG5cbiAgcmV0dXJuIGluc3RydW1lbnRhdGlvbkNvbmZpZztcbn1cblxuZXhwb3J0cy5fc2hvdWxkVXNlT3RlbEh0dHBJbnN0cnVtZW50YXRpb24gPSBfc2hvdWxkVXNlT3RlbEh0dHBJbnN0cnVtZW50YXRpb247XG5leHBvcnRzLmh0dHBJbnRlZ3JhdGlvbiA9IGh0dHBJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudE90ZWxIdHRwID0gaW5zdHJ1bWVudE90ZWxIdHRwO1xuZXhwb3J0cy5pbnN0cnVtZW50U2VudHJ5SHR0cCA9IGluc3RydW1lbnRTZW50cnlIdHRwO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aHR0cC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationUndici = __webpack_require__(/*! @opentelemetry/instrumentation-undici */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-undici@0.24.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-undici/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'NodeFetch';\n\nconst instrumentOtelNodeFetch = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationUndici.UndiciInstrumentation,\n (options) => {\n return _getConfigWithDefaults(options);\n },\n);\n\nconst instrumentSentryNodeFetch = nodeCore.generateInstrumentOnce(\n `${INTEGRATION_NAME}.sentry`,\n nodeCore.SentryNodeFetchInstrumentation,\n (options) => {\n return options;\n },\n);\n\nconst _nativeNodeFetchIntegration = ((options = {}) => {\n return {\n name: 'NodeFetch',\n setupOnce() {\n const instrumentSpans = _shouldInstrumentSpans(options, core.getClient()?.getOptions());\n\n // This is the \"regular\" OTEL instrumentation that emits spans\n if (instrumentSpans) {\n instrumentOtelNodeFetch(options);\n }\n\n // This is the Sentry-specific instrumentation that creates breadcrumbs & propagates traces\n // This must be registered after the OTEL one, to ensure that the core trace propagation logic takes presedence\n // Otherwise, the sentry-trace header may be set multiple times\n instrumentSentryNodeFetch(options);\n },\n };\n}) ;\n\nconst nativeNodeFetchIntegration = core.defineIntegration(_nativeNodeFetchIntegration);\n\n// Matching the behavior of the base instrumentation\nfunction getAbsoluteUrl(origin, path = '/') {\n const url = `${origin}`;\n\n if (url.endsWith('/') && path.startsWith('/')) {\n return `${url}${path.slice(1)}`;\n }\n\n if (!url.endsWith('/') && !path.startsWith('/')) {\n return `${url}/${path}`;\n }\n\n return `${url}${path}`;\n}\n\nfunction _shouldInstrumentSpans(options, clientOptions = {}) {\n // If `spans` is passed in, it takes precedence\n // Else, we by default emit spans, unless `skipOpenTelemetrySetup` is set to `true` or spans are not enabled\n return typeof options.spans === 'boolean'\n ? options.spans\n : !clientOptions.skipOpenTelemetrySetup && core.hasSpansEnabled(clientOptions);\n}\n\n/** Exported only for tests. */\nfunction _getConfigWithDefaults(options = {}) {\n const instrumentationConfig = {\n requireParentforSpans: false,\n ignoreRequestHook: request => {\n const url = getAbsoluteUrl(request.origin, request.path);\n const _ignoreOutgoingRequests = options.ignoreOutgoingRequests;\n const shouldIgnore = _ignoreOutgoingRequests && url && _ignoreOutgoingRequests(url);\n\n return !!shouldIgnore;\n },\n startSpanHook: request => {\n const url = getAbsoluteUrl(request.origin, request.path);\n\n // Sanitize data URLs to prevent long base64 strings in span attributes\n if (url.startsWith('data:')) {\n const sanitizedUrl = core.stripDataUrlContent(url);\n return {\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.node_fetch',\n 'http.url': sanitizedUrl,\n [core.SEMANTIC_ATTRIBUTE_URL_FULL]: sanitizedUrl,\n [core.SEMANTIC_ATTRIBUTE_SENTRY_CUSTOM_SPAN_NAME]: `${request.method || 'GET'} ${sanitizedUrl}`,\n };\n }\n\n return {\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.node_fetch',\n };\n },\n requestHook: options.requestHook,\n responseHook: options.responseHook,\n headersToSpanAttributes: options.headersToSpanAttributes,\n } ;\n\n return instrumentationConfig;\n}\n\nexports._getConfigWithDefaults = _getConfigWithDefaults;\nexports.nativeNodeFetchIntegration = nativeNodeFetchIntegration;\n//# sourceMappingURL=node-fetch.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL25vZGUtZmV0Y2guanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsOEJBQThCLG1CQUFPLENBQUMscU5BQXVDO0FBQzdFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQSxLQUFLLGlCQUFpQjtBQUN0QjtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUEsa0RBQWtEO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDs7QUFFQTtBQUNBO0FBQ0EsaUJBQWlCLE9BQU87O0FBRXhCO0FBQ0EsY0FBYyxJQUFJLEVBQUUsY0FBYztBQUNsQzs7QUFFQTtBQUNBLGNBQWMsSUFBSSxHQUFHLEtBQUs7QUFDMUI7O0FBRUEsWUFBWSxJQUFJLEVBQUUsS0FBSztBQUN2Qjs7QUFFQSwyREFBMkQ7QUFDM0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNENBQTRDO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0VBQWdFLHlCQUF5QixFQUFFLGFBQWE7QUFDeEc7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSw4QkFBOEI7QUFDOUIsa0NBQWtDO0FBQ2xDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy9ub2RlLWZldGNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25VbmRpY2kgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tdW5kaWNpJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnTm9kZUZldGNoJztcblxuY29uc3QgaW5zdHJ1bWVudE90ZWxOb2RlRmV0Y2ggPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICBpbnN0cnVtZW50YXRpb25VbmRpY2kuVW5kaWNpSW5zdHJ1bWVudGF0aW9uLFxuICAob3B0aW9ucykgPT4ge1xuICAgIHJldHVybiBfZ2V0Q29uZmlnV2l0aERlZmF1bHRzKG9wdGlvbnMpO1xuICB9LFxuKTtcblxuY29uc3QgaW5zdHJ1bWVudFNlbnRyeU5vZGVGZXRjaCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIGAke0lOVEVHUkFUSU9OX05BTUV9LnNlbnRyeWAsXG4gIG5vZGVDb3JlLlNlbnRyeU5vZGVGZXRjaEluc3RydW1lbnRhdGlvbixcbiAgKG9wdGlvbnMpID0+IHtcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfSxcbik7XG5cbmNvbnN0IF9uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ05vZGVGZXRjaCcsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgY29uc3QgaW5zdHJ1bWVudFNwYW5zID0gX3Nob3VsZEluc3RydW1lbnRTcGFucyhvcHRpb25zLCBjb3JlLmdldENsaWVudCgpPy5nZXRPcHRpb25zKCkpO1xuXG4gICAgICAvLyBUaGlzIGlzIHRoZSBcInJlZ3VsYXJcIiBPVEVMIGluc3RydW1lbnRhdGlvbiB0aGF0IGVtaXRzIHNwYW5zXG4gICAgICBpZiAoaW5zdHJ1bWVudFNwYW5zKSB7XG4gICAgICAgIGluc3RydW1lbnRPdGVsTm9kZUZldGNoKG9wdGlvbnMpO1xuICAgICAgfVxuXG4gICAgICAvLyBUaGlzIGlzIHRoZSBTZW50cnktc3BlY2lmaWMgaW5zdHJ1bWVudGF0aW9uIHRoYXQgY3JlYXRlcyBicmVhZGNydW1icyAmIHByb3BhZ2F0ZXMgdHJhY2VzXG4gICAgICAvLyBUaGlzIG11c3QgYmUgcmVnaXN0ZXJlZCBhZnRlciB0aGUgT1RFTCBvbmUsIHRvIGVuc3VyZSB0aGF0IHRoZSBjb3JlIHRyYWNlIHByb3BhZ2F0aW9uIGxvZ2ljIHRha2VzIHByZXNlZGVuY2VcbiAgICAgIC8vIE90aGVyd2lzZSwgdGhlIHNlbnRyeS10cmFjZSBoZWFkZXIgbWF5IGJlIHNldCBtdWx0aXBsZSB0aW1lc1xuICAgICAgaW5zdHJ1bWVudFNlbnRyeU5vZGVGZXRjaChvcHRpb25zKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG5jb25zdCBuYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX25hdGl2ZU5vZGVGZXRjaEludGVncmF0aW9uKTtcblxuLy8gTWF0Y2hpbmcgdGhlIGJlaGF2aW9yIG9mIHRoZSBiYXNlIGluc3RydW1lbnRhdGlvblxuZnVuY3Rpb24gZ2V0QWJzb2x1dGVVcmwob3JpZ2luLCBwYXRoID0gJy8nKSB7XG4gIGNvbnN0IHVybCA9IGAke29yaWdpbn1gO1xuXG4gIGlmICh1cmwuZW5kc1dpdGgoJy8nKSAmJiBwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgIHJldHVybiBgJHt1cmx9JHtwYXRoLnNsaWNlKDEpfWA7XG4gIH1cblxuICBpZiAoIXVybC5lbmRzV2l0aCgnLycpICYmICFwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgIHJldHVybiBgJHt1cmx9LyR7cGF0aH1gO1xuICB9XG5cbiAgcmV0dXJuIGAke3VybH0ke3BhdGh9YDtcbn1cblxuZnVuY3Rpb24gX3Nob3VsZEluc3RydW1lbnRTcGFucyhvcHRpb25zLCBjbGllbnRPcHRpb25zID0ge30pIHtcbiAgLy8gSWYgYHNwYW5zYCBpcyBwYXNzZWQgaW4sIGl0IHRha2VzIHByZWNlZGVuY2VcbiAgLy8gRWxzZSwgd2UgYnkgZGVmYXVsdCBlbWl0IHNwYW5zLCB1bmxlc3MgYHNraXBPcGVuVGVsZW1ldHJ5U2V0dXBgIGlzIHNldCB0byBgdHJ1ZWAgb3Igc3BhbnMgYXJlIG5vdCBlbmFibGVkXG4gIHJldHVybiB0eXBlb2Ygb3B0aW9ucy5zcGFucyA9PT0gJ2Jvb2xlYW4nXG4gICAgPyBvcHRpb25zLnNwYW5zXG4gICAgOiAhY2xpZW50T3B0aW9ucy5za2lwT3BlblRlbGVtZXRyeVNldHVwICYmIGNvcmUuaGFzU3BhbnNFbmFibGVkKGNsaWVudE9wdGlvbnMpO1xufVxuXG4vKiogRXhwb3J0ZWQgb25seSBmb3IgdGVzdHMuICovXG5mdW5jdGlvbiBfZ2V0Q29uZmlnV2l0aERlZmF1bHRzKG9wdGlvbnMgPSB7fSkge1xuICBjb25zdCBpbnN0cnVtZW50YXRpb25Db25maWcgPSB7XG4gICAgcmVxdWlyZVBhcmVudGZvclNwYW5zOiBmYWxzZSxcbiAgICBpZ25vcmVSZXF1ZXN0SG9vazogcmVxdWVzdCA9PiB7XG4gICAgICBjb25zdCB1cmwgPSBnZXRBYnNvbHV0ZVVybChyZXF1ZXN0Lm9yaWdpbiwgcmVxdWVzdC5wYXRoKTtcbiAgICAgIGNvbnN0IF9pZ25vcmVPdXRnb2luZ1JlcXVlc3RzID0gb3B0aW9ucy5pZ25vcmVPdXRnb2luZ1JlcXVlc3RzO1xuICAgICAgY29uc3Qgc2hvdWxkSWdub3JlID0gX2lnbm9yZU91dGdvaW5nUmVxdWVzdHMgJiYgdXJsICYmIF9pZ25vcmVPdXRnb2luZ1JlcXVlc3RzKHVybCk7XG5cbiAgICAgIHJldHVybiAhIXNob3VsZElnbm9yZTtcbiAgICB9LFxuICAgIHN0YXJ0U3Bhbkhvb2s6IHJlcXVlc3QgPT4ge1xuICAgICAgY29uc3QgdXJsID0gZ2V0QWJzb2x1dGVVcmwocmVxdWVzdC5vcmlnaW4sIHJlcXVlc3QucGF0aCk7XG5cbiAgICAgIC8vIFNhbml0aXplIGRhdGEgVVJMcyB0byBwcmV2ZW50IGxvbmcgYmFzZTY0IHN0cmluZ3MgaW4gc3BhbiBhdHRyaWJ1dGVzXG4gICAgICBpZiAodXJsLnN0YXJ0c1dpdGgoJ2RhdGE6JykpIHtcbiAgICAgICAgY29uc3Qgc2FuaXRpemVkVXJsID0gY29yZS5zdHJpcERhdGFVcmxDb250ZW50KHVybCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU5dOiAnYXV0by5odHRwLm90ZWwubm9kZV9mZXRjaCcsXG4gICAgICAgICAgJ2h0dHAudXJsJzogc2FuaXRpemVkVXJsLFxuICAgICAgICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9VUkxfRlVMTF06IHNhbml0aXplZFVybCxcbiAgICAgICAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX0NVU1RPTV9TUEFOX05BTUVdOiBgJHtyZXF1ZXN0Lm1ldGhvZCB8fCAnR0VUJ30gJHtzYW5pdGl6ZWRVcmx9YCxcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU5dOiAnYXV0by5odHRwLm90ZWwubm9kZV9mZXRjaCcsXG4gICAgICB9O1xuICAgIH0sXG4gICAgcmVxdWVzdEhvb2s6IG9wdGlvbnMucmVxdWVzdEhvb2ssXG4gICAgcmVzcG9uc2VIb29rOiBvcHRpb25zLnJlc3BvbnNlSG9vayxcbiAgICBoZWFkZXJzVG9TcGFuQXR0cmlidXRlczogb3B0aW9ucy5oZWFkZXJzVG9TcGFuQXR0cmlidXRlcyxcbiAgfSA7XG5cbiAgcmV0dXJuIGluc3RydW1lbnRhdGlvbkNvbmZpZztcbn1cblxuZXhwb3J0cy5fZ2V0Q29uZmlnV2l0aERlZmF1bHRzID0gX2dldENvbmZpZ1dpdGhEZWZhdWx0cztcbmV4cG9ydHMubmF0aXZlTm9kZUZldGNoSW50ZWdyYXRpb24gPSBuYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW5vZGUtZmV0Y2guanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationAmqplib = __webpack_require__(/*! @opentelemetry/instrumentation-amqplib */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-amqplib@0.61.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-amqplib/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Amqplib';\n\nconst config = {\n consumeEndHook: (span) => {\n nodeCore.addOriginToSpan(span, 'auto.amqplib.otel.consumer');\n },\n publishHook: (span) => {\n nodeCore.addOriginToSpan(span, 'auto.amqplib.otel.publisher');\n },\n};\n\nconst instrumentAmqplib = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationAmqplib.AmqplibInstrumentation(config));\n\nconst _amqplibIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentAmqplib();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [amqplib](https://www.npmjs.com/package/amqplib) library.\n *\n * For more information, see the [`amqplibIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/amqplib/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.amqplibIntegration()],\n * });\n * ```\n */\nconst amqplibIntegration = core.defineIntegration(_amqplibIntegration);\n\nexports.amqplibIntegration = amqplibIntegration;\nexports.instrumentAmqplib = instrumentAmqplib;\n//# sourceMappingURL=amqplib.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvYW1xcGxpYi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEsMEJBQTBCO0FBQzFCLHlCQUF5QjtBQUN6QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9hbXFwbGliLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25BbXFwbGliID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWFtcXBsaWInKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdBbXFwbGliJztcblxuY29uc3QgY29uZmlnID0ge1xuICBjb25zdW1lRW5kSG9vazogKHNwYW4pID0+IHtcbiAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uYW1xcGxpYi5vdGVsLmNvbnN1bWVyJyk7XG4gIH0sXG4gIHB1Ymxpc2hIb29rOiAoc3BhbikgPT4ge1xuICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5hbXFwbGliLm90ZWwucHVibGlzaGVyJyk7XG4gIH0sXG59O1xuXG5jb25zdCBpbnN0cnVtZW50QW1xcGxpYiA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkFtcXBsaWIuQW1xcGxpYkluc3RydW1lbnRhdGlvbihjb25maWcpKTtcblxuY29uc3QgX2FtcXBsaWJJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50QW1xcGxpYigpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbYW1xcGxpYl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvYW1xcGxpYikgbGlicmFyeS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYGFtcXBsaWJJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9hbXFwbGliLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuYW1xcGxpYkludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgYW1xcGxpYkludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfYW1xcGxpYkludGVncmF0aW9uKTtcblxuZXhwb3J0cy5hbXFwbGliSW50ZWdyYXRpb24gPSBhbXFwbGliSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRBbXFwbGliID0gaW5zdHJ1bWVudEFtcXBsaWI7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1hbXFwbGliLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js ***!
\********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js\");\n\nconst instrumentAnthropicAi = nodeCore.generateInstrumentOnce(\n core.ANTHROPIC_AI_INTEGRATION_NAME,\n options => new instrumentation.SentryAnthropicAiInstrumentation(options),\n);\n\nconst _anthropicAIIntegration = ((options = {}) => {\n return {\n name: core.ANTHROPIC_AI_INTEGRATION_NAME,\n options,\n setupOnce() {\n instrumentAnthropicAi(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the Anthropic AI SDK.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments Anthropic AI SDK client instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.anthropicAIIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record prompt messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.anthropicAIIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.anthropicAIIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n */\nconst anthropicAIIntegration = core.defineIntegration(_anthropicAIIntegration);\n\nexports.anthropicAIIntegration = anthropicAIIntegration;\nexports.instrumentAnthropicAi = instrumentAnthropicAi;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvYW50aHJvcGljLWFpL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsc0tBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4Q0FBOEM7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4QkFBOEI7QUFDOUIsNkJBQTZCO0FBQzdCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2FudGhyb3BpYy1haS9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnLi9pbnN0cnVtZW50YXRpb24uanMnKTtcblxuY29uc3QgaW5zdHJ1bWVudEFudGhyb3BpY0FpID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgY29yZS5BTlRIUk9QSUNfQUlfSU5URUdSQVRJT05fTkFNRSxcbiAgb3B0aW9ucyA9PiBuZXcgaW5zdHJ1bWVudGF0aW9uLlNlbnRyeUFudGhyb3BpY0FpSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX2FudGhyb3BpY0FJSW50ZWdyYXRpb24gPSAoKG9wdGlvbnMgPSB7fSkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IGNvcmUuQU5USFJPUElDX0FJX0lOVEVHUkFUSU9OX05BTUUsXG4gICAgb3B0aW9ucyxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50QW50aHJvcGljQWkob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIEFudGhyb3BpYyBBSSBTREsuXG4gKlxuICogVGhpcyBpbnRlZ3JhdGlvbiBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuXG4gKlxuICogV2hlbiBjb25maWd1cmVkLCB0aGlzIGludGVncmF0aW9uIGF1dG9tYXRpY2FsbHkgaW5zdHJ1bWVudHMgQW50aHJvcGljIEFJIFNESyBjbGllbnQgaW5zdGFuY2VzXG4gKiB0byBjYXB0dXJlIHRlbGVtZXRyeSBkYXRhIGZvbGxvd2luZyBPcGVuVGVsZW1ldHJ5IFNlbWFudGljIENvbnZlbnRpb25zIGZvciBHZW5lcmF0aXZlIEFJLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBpbXBvcnQgKiBhcyBTZW50cnkgZnJvbSAnQHNlbnRyeS9ub2RlJztcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5hbnRocm9waWNBSUludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiAjIyBPcHRpb25zXG4gKlxuICogLSBgcmVjb3JkSW5wdXRzYDogV2hldGhlciB0byByZWNvcmQgcHJvbXB0IG1lc3NhZ2VzIChkZWZhdWx0OiByZXNwZWN0cyBgc2VuZERlZmF1bHRQaWlgIGNsaWVudCBvcHRpb24pXG4gKiAtIGByZWNvcmRPdXRwdXRzYDogV2hldGhlciB0byByZWNvcmQgcmVzcG9uc2UgdGV4dCAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICpcbiAqICMjIyBEZWZhdWx0IEJlaGF2aW9yXG4gKlxuICogQnkgZGVmYXVsdCwgdGhlIGludGVncmF0aW9uIHdpbGw6XG4gKiAtIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgT05MWSBpZiBgc2VuZERlZmF1bHRQaWlgIGlzIHNldCB0byBgdHJ1ZWAgaW4geW91ciBTZW50cnkgY2xpZW50IG9wdGlvbnNcbiAqIC0gT3RoZXJ3aXNlLCBpbnB1dHMgYW5kIG91dHB1dHMgYXJlIE5PVCByZWNvcmRlZCB1bmxlc3MgZXhwbGljaXRseSBlbmFibGVkXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIC8vIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgd2hlbiBzZW5kRGVmYXVsdFBpaSBpcyBmYWxzZVxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkuYW50aHJvcGljQUlJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IHRydWUsXG4gKiAgICAgICByZWNvcmRPdXRwdXRzOiB0cnVlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICpcbiAqIC8vIE5ldmVyIHJlY29yZCBpbnB1dHMvb3V0cHV0cyByZWdhcmRsZXNzIG9mIHNlbmREZWZhdWx0UGlpXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIHNlbmREZWZhdWx0UGlpOiB0cnVlLFxuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkuYW50aHJvcGljQUlJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IGZhbHNlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogZmFsc2VcbiAqICAgICB9KVxuICogICBdLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKi9cbmNvbnN0IGFudGhyb3BpY0FJSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9hbnRocm9waWNBSUludGVncmF0aW9uKTtcblxuZXhwb3J0cy5hbnRocm9waWNBSUludGVncmF0aW9uID0gYW50aHJvcGljQUlJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEFudGhyb3BpY0FpID0gaW5zdHJ1bWVudEFudGhyb3BpY0FpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js ***!
\******************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.19.2 <1.0.0'];\n\n/**\n * Sentry Anthropic AI instrumentation using OpenTelemetry.\n */\nclass SentryAnthropicAiInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-anthropic-ai', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n '@anthropic-ai/sdk',\n supportedVersions,\n this._patch.bind(this),\n );\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the Anthropic AI client constructor.\n */\n _patch(exports$1) {\n const Original = exports$1.Anthropic;\n\n const config = this.getConfig();\n\n const WrappedAnthropic = function ( ...args) {\n // Check if wrapping should be skipped (e.g., when LangChain is handling instrumentation)\n if (core._INTERNAL_shouldSkipAiProviderWrapping(core.ANTHROPIC_AI_INTEGRATION_NAME)) {\n return Reflect.construct(Original, args) ;\n }\n\n const instance = Reflect.construct(Original, args);\n\n return core.instrumentAnthropicAiClient(instance , config);\n } ;\n\n // Preserve static and prototype chains\n Object.setPrototypeOf(WrappedAnthropic, Original);\n Object.setPrototypeOf(WrappedAnthropic.prototype, Original.prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedAnthropic, key, descriptor);\n }\n }\n }\n\n // Constructor replacement - handle read-only properties\n // The Anthropic property might have only a getter, so use defineProperty\n try {\n exports$1.Anthropic = WrappedAnthropic;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, 'Anthropic', {\n value: WrappedAnthropic,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n\n // Wrap the default export if it points to the original constructor\n // Constructor replacement - handle read-only properties\n // The Anthropic property might have only a getter, so use defineProperty\n if (exports$1.default === Original) {\n try {\n exports$1.default = WrappedAnthropic;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, 'default', {\n value: WrappedAnthropic,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n }\n return exports$1;\n }\n}\n\nexports.SentryAnthropicAiInstrumentation = SentryAnthropicAiInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvYW50aHJvcGljLWFpL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHdDQUF3QztBQUN4QyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9hbnRocm9waWMtYWkvaW5zdHJ1bWVudGF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVzVHVubmVsUGF0aFwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiU0VOVFJZX1JFTEVBU0VcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlCYXNlUGF0aFwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeU5leHRKc1ZlcnNpb25cIl0gPSBcIjE2LjEuNlwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZUZyYW1lc0Rpc3REaXJcIl0gPSBcIi5uZXh0XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlWZXJjZWxDcm9uc0NvbmZpZ1wiXSA9IHVuZGVmaW5lZDtPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5cbmNvbnN0IHN1cHBvcnRlZFZlcnNpb25zID0gWyc+PTAuMTkuMiA8MS4wLjAnXTtcblxuLyoqXG4gKiBTZW50cnkgQW50aHJvcGljIEFJIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlBbnRocm9waWNBaUluc3RydW1lbnRhdGlvbiBleHRlbmRzIGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25CYXNlIHtcbiAgIGNvbnN0cnVjdG9yKGNvbmZpZyA9IHt9KSB7XG4gICAgc3VwZXIoJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWFudGhyb3BpYy1haScsIGNvcmUuU0RLX1ZFUlNJT04sIGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgdGhlIGluc3RydW1lbnRhdGlvbiBieSBkZWZpbmluZyB0aGUgbW9kdWxlcyB0byBiZSBwYXRjaGVkLlxuICAgKi9cbiAgIGluaXQoKSB7XG4gICAgY29uc3QgbW9kdWxlID0gbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRGVmaW5pdGlvbihcbiAgICAgICdAYW50aHJvcGljLWFpL3NkaycsXG4gICAgICBzdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAgIHRoaXMuX3BhdGNoLmJpbmQodGhpcyksXG4gICAgKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcmUgcGF0Y2ggbG9naWMgYXBwbHlpbmcgaW5zdHJ1bWVudGF0aW9uIHRvIHRoZSBBbnRocm9waWMgQUkgY2xpZW50IGNvbnN0cnVjdG9yLlxuICAgKi9cbiAgIF9wYXRjaChleHBvcnRzJDEpIHtcbiAgICBjb25zdCBPcmlnaW5hbCA9IGV4cG9ydHMkMS5BbnRocm9waWM7XG5cbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldENvbmZpZygpO1xuXG4gICAgY29uc3QgV3JhcHBlZEFudGhyb3BpYyA9IGZ1bmN0aW9uICggLi4uYXJncykge1xuICAgICAgLy8gQ2hlY2sgaWYgd3JhcHBpbmcgc2hvdWxkIGJlIHNraXBwZWQgKGUuZy4sIHdoZW4gTGFuZ0NoYWluIGlzIGhhbmRsaW5nIGluc3RydW1lbnRhdGlvbilcbiAgICAgIGlmIChjb3JlLl9JTlRFUk5BTF9zaG91bGRTa2lwQWlQcm92aWRlcldyYXBwaW5nKGNvcmUuQU5USFJPUElDX0FJX0lOVEVHUkFUSU9OX05BTUUpKSB7XG4gICAgICAgIHJldHVybiBSZWZsZWN0LmNvbnN0cnVjdChPcmlnaW5hbCwgYXJncykgO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBpbnN0YW5jZSA9IFJlZmxlY3QuY29uc3RydWN0KE9yaWdpbmFsLCBhcmdzKTtcblxuICAgICAgcmV0dXJuIGNvcmUuaW5zdHJ1bWVudEFudGhyb3BpY0FpQ2xpZW50KGluc3RhbmNlICwgY29uZmlnKTtcbiAgICB9IDtcblxuICAgIC8vIFByZXNlcnZlIHN0YXRpYyBhbmQgcHJvdG90eXBlIGNoYWluc1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZihXcmFwcGVkQW50aHJvcGljLCBPcmlnaW5hbCk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRBbnRocm9waWMucHJvdG90eXBlLCBPcmlnaW5hbC5wcm90b3R5cGUpO1xuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoT3JpZ2luYWwpKSB7XG4gICAgICBpZiAoIVsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10uaW5jbHVkZXMoa2V5KSkge1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihPcmlnaW5hbCwga2V5KTtcbiAgICAgICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoV3JhcHBlZEFudGhyb3BpYywga2V5LCBkZXNjcmlwdG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbnN0cnVjdG9yIHJlcGxhY2VtZW50IC0gaGFuZGxlIHJlYWQtb25seSBwcm9wZXJ0aWVzXG4gICAgLy8gVGhlIEFudGhyb3BpYyBwcm9wZXJ0eSBtaWdodCBoYXZlIG9ubHkgYSBnZXR0ZXIsIHNvIHVzZSBkZWZpbmVQcm9wZXJ0eVxuICAgIHRyeSB7XG4gICAgICBleHBvcnRzJDEuQW50aHJvcGljID0gV3JhcHBlZEFudGhyb3BpYztcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElmIGRpcmVjdCBhc3NpZ25tZW50IGZhaWxzLCBvdmVycmlkZSB0aGUgcHJvcGVydHkgZGVzY3JpcHRvclxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMkMSwgJ0FudGhyb3BpYycsIHtcbiAgICAgICAgdmFsdWU6IFdyYXBwZWRBbnRocm9waWMsXG4gICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBXcmFwIHRoZSBkZWZhdWx0IGV4cG9ydCBpZiBpdCBwb2ludHMgdG8gdGhlIG9yaWdpbmFsIGNvbnN0cnVjdG9yXG4gICAgLy8gQ29uc3RydWN0b3IgcmVwbGFjZW1lbnQgLSBoYW5kbGUgcmVhZC1vbmx5IHByb3BlcnRpZXNcbiAgICAvLyBUaGUgQW50aHJvcGljIHByb3BlcnR5IG1pZ2h0IGhhdmUgb25seSBhIGdldHRlciwgc28gdXNlIGRlZmluZVByb3BlcnR5XG4gICAgaWYgKGV4cG9ydHMkMS5kZWZhdWx0ID09PSBPcmlnaW5hbCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgZXhwb3J0cyQxLmRlZmF1bHQgPSBXcmFwcGVkQW50aHJvcGljO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIC8vIElmIGRpcmVjdCBhc3NpZ25tZW50IGZhaWxzLCBvdmVycmlkZSB0aGUgcHJvcGVydHkgZGVzY3JpcHRvclxuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cyQxLCAnZGVmYXVsdCcsIHtcbiAgICAgICAgICB2YWx1ZTogV3JhcHBlZEFudGhyb3BpYyxcbiAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBleHBvcnRzJDE7XG4gIH1cbn1cblxuZXhwb3J0cy5TZW50cnlBbnRocm9waWNBaUluc3RydW1lbnRhdGlvbiA9IFNlbnRyeUFudGhyb3BpY0FpSW5zdHJ1bWVudGF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5zdHJ1bWVudGF0aW9uLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationConnect = __webpack_require__(/*! @opentelemetry/instrumentation-connect */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-connect@0.57.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-connect/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Connect';\n\nconst instrumentConnect = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationConnect.ConnectInstrumentation());\n\nconst _connectIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentConnect();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Connect](https://github.com/senchalabs/connect/).\n *\n * If you also want to capture errors, you need to call `setupConnectErrorHandler(app)` after you initialize your connect app.\n *\n * For more information, see the [connect documentation](https://docs.sentry.io/platforms/javascript/guides/connect/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.connectIntegration()],\n * })\n * ```\n */\nconst connectIntegration = core.defineIntegration(_connectIntegration);\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction connectErrorMiddleware(err, req, res, next) {\n core.captureException(err, {\n mechanism: {\n handled: false,\n type: 'auto.middleware.connect',\n },\n });\n next(err);\n}\n\n/**\n * Add a Connect middleware to capture errors to Sentry.\n *\n * @param app The Connect app to attach the error handler to\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const connect = require(\"connect\");\n *\n * const app = connect();\n *\n * Sentry.setupConnectErrorHandler(app);\n *\n * // Add you connect routes here\n *\n * app.listen(3000);\n * ```\n */\nconst setupConnectErrorHandler = (app) => {\n app.use(connectErrorMiddleware);\n\n // Sadly, ConnectInstrumentation has no requestHook, so we need to add the attributes here\n // We register this hook in this method, because if we register it in the integration `setup`,\n // it would always run even for users that are not even using connect\n const client = core.getClient();\n if (client) {\n client.on('spanStart', span => {\n addConnectSpanAttributes(span);\n });\n }\n\n nodeCore.ensureIsWrapped(app.use, 'connect');\n};\n\nfunction addConnectSpanAttributes(span) {\n const attributes = core.spanToJSON(span).data;\n\n // this is one of: middleware, request_handler\n const type = attributes['connect.type'];\n\n // If this is already set, or we have no connect span, no need to process again...\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.connect',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.connect`,\n });\n\n // Also update the name, we don't need the \"middleware - \" prefix\n const name = attributes['connect.name'];\n if (typeof name === 'string') {\n span.updateName(name);\n }\n}\n\nexports.connectIntegration = connectIntegration;\nexports.instrumentConnect = instrumentConnect;\nexports.setupConnectErrorHandler = setupConnectErrorHandler;\n//# sourceMappingURL=connect.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvY29ubmVjdC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDRDQUE0QyxLQUFLO0FBQ2pELEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLDBCQUEwQjtBQUMxQix5QkFBeUI7QUFDekIsZ0NBQWdDO0FBQ2hDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2Nvbm5lY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbkNvbm5lY3QgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tY29ubmVjdCcpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0Nvbm5lY3QnO1xuXG5jb25zdCBpbnN0cnVtZW50Q29ubmVjdCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkNvbm5lY3QuQ29ubmVjdEluc3RydW1lbnRhdGlvbigpKTtcblxuY29uc3QgX2Nvbm5lY3RJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50Q29ubmVjdCgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIFtDb25uZWN0XShodHRwczovL2dpdGh1Yi5jb20vc2VuY2hhbGFicy9jb25uZWN0LykuXG4gKlxuICogSWYgeW91IGFsc28gd2FudCB0byBjYXB0dXJlIGVycm9ycywgeW91IG5lZWQgdG8gY2FsbCBgc2V0dXBDb25uZWN0RXJyb3JIYW5kbGVyKGFwcClgIGFmdGVyIHlvdSBpbml0aWFsaXplIHlvdXIgY29ubmVjdCBhcHAuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Nvbm5lY3QgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvY29ubmVjdC8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5jb25uZWN0SW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGNvbm5lY3RJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2Nvbm5lY3RJbnRlZ3JhdGlvbik7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5mdW5jdGlvbiBjb25uZWN0RXJyb3JNaWRkbGV3YXJlKGVyciwgcmVxLCByZXMsIG5leHQpIHtcbiAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGVyciwge1xuICAgIG1lY2hhbmlzbToge1xuICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICB0eXBlOiAnYXV0by5taWRkbGV3YXJlLmNvbm5lY3QnLFxuICAgIH0sXG4gIH0pO1xuICBuZXh0KGVycik7XG59XG5cbi8qKlxuICogQWRkIGEgQ29ubmVjdCBtaWRkbGV3YXJlIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gYXBwIFRoZSBDb25uZWN0IGFwcCB0byBhdHRhY2ggdGhlIGVycm9yIGhhbmRsZXIgdG9cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBjb25uZWN0ID0gcmVxdWlyZShcImNvbm5lY3RcIik7XG4gKlxuICogY29uc3QgYXBwID0gY29ubmVjdCgpO1xuICpcbiAqIFNlbnRyeS5zZXR1cENvbm5lY3RFcnJvckhhbmRsZXIoYXBwKTtcbiAqXG4gKiAvLyBBZGQgeW91IGNvbm5lY3Qgcm91dGVzIGhlcmVcbiAqXG4gKiBhcHAubGlzdGVuKDMwMDApO1xuICogYGBgXG4gKi9cbmNvbnN0IHNldHVwQ29ubmVjdEVycm9ySGFuZGxlciA9IChhcHApID0+IHtcbiAgYXBwLnVzZShjb25uZWN0RXJyb3JNaWRkbGV3YXJlKTtcblxuICAvLyBTYWRseSwgQ29ubmVjdEluc3RydW1lbnRhdGlvbiBoYXMgbm8gcmVxdWVzdEhvb2ssIHNvIHdlIG5lZWQgdG8gYWRkIHRoZSBhdHRyaWJ1dGVzIGhlcmVcbiAgLy8gV2UgcmVnaXN0ZXIgdGhpcyBob29rIGluIHRoaXMgbWV0aG9kLCBiZWNhdXNlIGlmIHdlIHJlZ2lzdGVyIGl0IGluIHRoZSBpbnRlZ3JhdGlvbiBgc2V0dXBgLFxuICAvLyBpdCB3b3VsZCBhbHdheXMgcnVuIGV2ZW4gZm9yIHVzZXJzIHRoYXQgYXJlIG5vdCBldmVuIHVzaW5nIGNvbm5lY3RcbiAgY29uc3QgY2xpZW50ID0gY29yZS5nZXRDbGllbnQoKTtcbiAgaWYgKGNsaWVudCkge1xuICAgIGNsaWVudC5vbignc3BhblN0YXJ0Jywgc3BhbiA9PiB7XG4gICAgICBhZGRDb25uZWN0U3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgfSk7XG4gIH1cblxuICBub2RlQ29yZS5lbnN1cmVJc1dyYXBwZWQoYXBwLnVzZSwgJ2Nvbm5lY3QnKTtcbn07XG5cbmZ1bmN0aW9uIGFkZENvbm5lY3RTcGFuQXR0cmlidXRlcyhzcGFuKSB7XG4gIGNvbnN0IGF0dHJpYnV0ZXMgPSBjb3JlLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcblxuICAvLyB0aGlzIGlzIG9uZSBvZjogbWlkZGxld2FyZSwgcmVxdWVzdF9oYW5kbGVyXG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydjb25uZWN0LnR5cGUnXTtcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIGNvbm5lY3Qgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF0gfHwgIXR5cGUpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBzcGFuLnNldEF0dHJpYnV0ZXMoe1xuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1JJR0lOXTogJ2F1dG8uaHR0cC5vdGVsLmNvbm5lY3QnLFxuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiBgJHt0eXBlfS5jb25uZWN0YCxcbiAgfSk7XG5cbiAgLy8gQWxzbyB1cGRhdGUgdGhlIG5hbWUsIHdlIGRvbid0IG5lZWQgdGhlIFwibWlkZGxld2FyZSAtIFwiIHByZWZpeFxuICBjb25zdCBuYW1lID0gYXR0cmlidXRlc1snY29ubmVjdC5uYW1lJ107XG4gIGlmICh0eXBlb2YgbmFtZSA9PT0gJ3N0cmluZycpIHtcbiAgICBzcGFuLnVwZGF0ZU5hbWUobmFtZSk7XG4gIH1cbn1cblxuZXhwb3J0cy5jb25uZWN0SW50ZWdyYXRpb24gPSBjb25uZWN0SW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRDb25uZWN0ID0gaW5zdHJ1bWVudENvbm5lY3Q7XG5leHBvcnRzLnNldHVwQ29ubmVjdEVycm9ySGFuZGxlciA9IHNldHVwQ29ubmVjdEVycm9ySGFuZGxlcjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWNvbm5lY3QuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationDataloader = __webpack_require__(/*! @opentelemetry/instrumentation-dataloader */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-dataloader@0.31.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-dataloader/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Dataloader';\n\nconst instrumentDataloader = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationDataloader.DataloaderInstrumentation({\n requireParentSpan: true,\n }),\n);\n\nconst _dataloaderIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentDataloader();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n // This is called either immediately or when the instrumentation is wrapped\n instrumentationWrappedCallback?.(() => {\n client.on('spanStart', span => {\n const spanJSON = core.spanToJSON(span);\n if (spanJSON.description?.startsWith('dataloader')) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.dataloader');\n }\n\n // These are all possible dataloader span descriptions\n // Still checking for the future versions\n // in case they add support for `clear` and `prime`\n if (\n spanJSON.description === 'dataloader.load' ||\n spanJSON.description === 'dataloader.loadMany' ||\n spanJSON.description === 'dataloader.batch'\n ) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, 'cache.get');\n // TODO: We can try adding `key` to the `data` attribute upstream.\n // Or alternatively, we can add `requestHook` to the dataloader instrumentation.\n }\n });\n });\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [dataloader](https://www.npmjs.com/package/dataloader) library.\n *\n * For more information, see the [`dataloaderIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/dataloader/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.dataloaderIntegration()],\n * });\n * ```\n */\nconst dataloaderIntegration = core.defineIntegration(_dataloaderIntegration);\n\nexports.dataloaderIntegration = dataloaderIntegration;\nexports.instrumentDataloader = instrumentDataloader;\n//# sourceMappingURL=dataloader.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZGF0YWxvYWRlci5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxrQ0FBa0MsbUJBQU8sQ0FBQyxpT0FBMkM7QUFDckYsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUCxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLDZCQUE2QjtBQUM3Qiw0QkFBNEI7QUFDNUIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZGF0YWxvYWRlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uRGF0YWxvYWRlciA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1kYXRhbG9hZGVyJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnRGF0YWxvYWRlcic7XG5cbmNvbnN0IGluc3RydW1lbnREYXRhbG9hZGVyID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgKCkgPT5cbiAgICBuZXcgaW5zdHJ1bWVudGF0aW9uRGF0YWxvYWRlci5EYXRhbG9hZGVySW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIHJlcXVpcmVQYXJlbnRTcGFuOiB0cnVlLFxuICAgIH0pLFxuKTtcblxuY29uc3QgX2RhdGFsb2FkZXJJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIGxldCBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2s7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IGluc3RydW1lbnREYXRhbG9hZGVyKCk7XG4gICAgICBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2sgPSBub2RlQ29yZS5pbnN0cnVtZW50V2hlbldyYXBwZWQoaW5zdHJ1bWVudGF0aW9uKTtcbiAgICB9LFxuXG4gICAgc2V0dXAoY2xpZW50KSB7XG4gICAgICAvLyBUaGlzIGlzIGNhbGxlZCBlaXRoZXIgaW1tZWRpYXRlbHkgb3Igd2hlbiB0aGUgaW5zdHJ1bWVudGF0aW9uIGlzIHdyYXBwZWRcbiAgICAgIGluc3RydW1lbnRhdGlvbldyYXBwZWRDYWxsYmFjaz8uKCgpID0+IHtcbiAgICAgICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCBzcGFuID0+IHtcbiAgICAgICAgICBjb25zdCBzcGFuSlNPTiA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgICAgICAgICBpZiAoc3BhbkpTT04uZGVzY3JpcHRpb24/LnN0YXJ0c1dpdGgoJ2RhdGFsb2FkZXInKSkge1xuICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTiwgJ2F1dG8uZGIub3RlbC5kYXRhbG9hZGVyJyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gVGhlc2UgYXJlIGFsbCBwb3NzaWJsZSBkYXRhbG9hZGVyIHNwYW4gZGVzY3JpcHRpb25zXG4gICAgICAgICAgLy8gU3RpbGwgY2hlY2tpbmcgZm9yIHRoZSBmdXR1cmUgdmVyc2lvbnNcbiAgICAgICAgICAvLyBpbiBjYXNlIHRoZXkgYWRkIHN1cHBvcnQgZm9yIGBjbGVhcmAgYW5kIGBwcmltZWBcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBzcGFuSlNPTi5kZXNjcmlwdGlvbiA9PT0gJ2RhdGFsb2FkZXIubG9hZCcgfHxcbiAgICAgICAgICAgIHNwYW5KU09OLmRlc2NyaXB0aW9uID09PSAnZGF0YWxvYWRlci5sb2FkTWFueScgfHxcbiAgICAgICAgICAgIHNwYW5KU09OLmRlc2NyaXB0aW9uID09PSAnZGF0YWxvYWRlci5iYXRjaCdcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgJ2NhY2hlLmdldCcpO1xuICAgICAgICAgICAgLy8gVE9ETzogV2UgY2FuIHRyeSBhZGRpbmcgYGtleWAgdG8gdGhlIGBkYXRhYCBhdHRyaWJ1dGUgdXBzdHJlYW0uXG4gICAgICAgICAgICAvLyBPciBhbHRlcm5hdGl2ZWx5LCB3ZSBjYW4gYWRkIGByZXF1ZXN0SG9va2AgdG8gdGhlIGRhdGFsb2FkZXIgaW5zdHJ1bWVudGF0aW9uLlxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2RhdGFsb2FkZXJdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2RhdGFsb2FkZXIpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BkYXRhbG9hZGVySW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvZGF0YWxvYWRlci8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmRhdGFsb2FkZXJJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IGRhdGFsb2FkZXJJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2RhdGFsb2FkZXJJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuZGF0YWxvYWRlckludGVncmF0aW9uID0gZGF0YWxvYWRlckludGVncmF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50RGF0YWxvYWRlciA9IGluc3RydW1lbnREYXRhbG9hZGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YWxvYWRlci5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/dataloader.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationExpress = __webpack_require__(/*! @opentelemetry/instrumentation-express */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-express@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-express/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../debug-build.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\nconst INTEGRATION_NAME = 'Express';\n\nfunction requestHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.http.otel.express');\n\n const attributes = core.spanToJSON(span).data;\n // this is one of: middleware, request_handler, router\n const type = attributes['express.type'];\n\n if (type) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, `${type}.express`);\n }\n\n // Also update the name, we don't need to \"middleware - \" prefix\n const name = attributes['express.name'];\n if (typeof name === 'string') {\n span.updateName(name);\n }\n}\n\nfunction spanNameHook(info, defaultName) {\n if (core.getIsolationScope() === core.getDefaultIsolationScope()) {\n debugBuild.DEBUG_BUILD && core.debug.warn('Isolation scope is still default isolation scope - skipping setting transactionName');\n return defaultName;\n }\n if (info.layerType === 'request_handler') {\n // type cast b/c Otel unfortunately types info.request as any :(\n const req = info.request ;\n const method = req.method ? req.method.toUpperCase() : 'GET';\n core.getIsolationScope().setTransactionName(`${method} ${info.route}`);\n }\n return defaultName;\n}\n\nconst instrumentExpress = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationExpress.ExpressInstrumentation({\n requestHook: span => requestHook(span),\n spanNameHook: (info, defaultName) => spanNameHook(info, defaultName),\n }),\n);\n\nconst _expressIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentExpress();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Express](https://expressjs.com/).\n *\n * If you also want to capture errors, you need to call `setupExpressErrorHandler(app)` after you set up your Express server.\n *\n * For more information, see the [express documentation](https://docs.sentry.io/platforms/javascript/guides/express/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.expressIntegration()],\n * })\n * ```\n */\nconst expressIntegration = core.defineIntegration(_expressIntegration);\n\n/**\n * An Express-compatible error handler.\n */\nfunction expressErrorHandler(options) {\n return function sentryErrorMiddleware(\n error,\n request,\n res,\n next,\n ) {\n const normalizedRequest = core.httpRequestToRequestData(request);\n // Ensure we use the express-enhanced request here, instead of the plain HTTP one\n // When an error happens, the `expressRequestHandler` middleware does not run, so we set it here too\n core.getIsolationScope().setSDKProcessingMetadata({ normalizedRequest });\n\n const shouldHandleError = options?.shouldHandleError || defaultShouldHandleError;\n\n if (shouldHandleError(error)) {\n const eventId = core.captureException(error, { mechanism: { type: 'auto.middleware.express', handled: false } });\n (res ).sentry = eventId;\n }\n\n next(error);\n };\n}\n\nfunction expressRequestHandler() {\n return function sentryRequestMiddleware(\n request,\n _res,\n next,\n ) {\n const normalizedRequest = core.httpRequestToRequestData(request);\n // Ensure we use the express-enhanced request here, instead of the plain HTTP one\n core.getIsolationScope().setSDKProcessingMetadata({ normalizedRequest });\n\n next();\n };\n}\n\n/**\n * Add an Express error handler to capture errors to Sentry.\n *\n * The error handler must be before any other middleware and after all controllers.\n *\n * @param app The Express instances\n * @param options {ExpressHandlerOptions} Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const express = require(\"express\");\n *\n * const app = express();\n *\n * // Add your routes, etc.\n *\n * // Add this after all routes,\n * // but before any and other error-handling middlewares are defined\n * Sentry.setupExpressErrorHandler(app);\n *\n * app.listen(3000);\n * ```\n */\nfunction setupExpressErrorHandler(\n app,\n options,\n) {\n app.use(expressRequestHandler());\n app.use(expressErrorHandler(options));\n nodeCore.ensureIsWrapped(app.use, 'express');\n}\n\nfunction getStatusCodeFromResponse(error) {\n const statusCode = error.status || error.statusCode || error.status_code || error.output?.statusCode;\n return statusCode ? parseInt(statusCode , 10) : 500;\n}\n\n/** Returns true if response code is internal server error */\nfunction defaultShouldHandleError(error) {\n const status = getStatusCodeFromResponse(error);\n return status >= 500;\n}\n\nexports.expressErrorHandler = expressErrorHandler;\nexports.expressIntegration = expressIntegration;\nexports.instrumentExpress = instrumentExpress;\nexports.setupExpressErrorHandler = setupExpressErrorHandler;\n//# sourceMappingURL=express.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZXhwcmVzcy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxnSUFBc0I7O0FBRWpEOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsNERBQTRELEtBQUs7QUFDakU7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCxRQUFRLEVBQUUsV0FBVztBQUN4RTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCxtQkFBbUI7O0FBRTNFOztBQUVBO0FBQ0EscURBQXFELGFBQWEsbURBQW1EO0FBQ3JIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3REFBd0QsbUJBQW1COztBQUUzRTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHVCQUF1QjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLDJCQUEyQjtBQUMzQiwwQkFBMEI7QUFDMUIseUJBQXlCO0FBQ3pCLGdDQUFnQztBQUNoQyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9leHByZXNzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25FeHByZXNzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWV4cHJlc3MnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi8uLi9kZWJ1Zy1idWlsZC5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0V4cHJlc3MnO1xuXG5mdW5jdGlvbiByZXF1ZXN0SG9vayhzcGFuKSB7XG4gIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5odHRwLm90ZWwuZXhwcmVzcycpO1xuXG4gIGNvbnN0IGF0dHJpYnV0ZXMgPSBjb3JlLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcbiAgLy8gdGhpcyBpcyBvbmUgb2Y6IG1pZGRsZXdhcmUsIHJlcXVlc3RfaGFuZGxlciwgcm91dGVyXG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydleHByZXNzLnR5cGUnXTtcblxuICBpZiAodHlwZSkge1xuICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgYCR7dHlwZX0uZXhwcmVzc2ApO1xuICB9XG5cbiAgLy8gQWxzbyB1cGRhdGUgdGhlIG5hbWUsIHdlIGRvbid0IG5lZWQgdG8gXCJtaWRkbGV3YXJlIC0gXCIgcHJlZml4XG4gIGNvbnN0IG5hbWUgPSBhdHRyaWJ1dGVzWydleHByZXNzLm5hbWUnXTtcbiAgaWYgKHR5cGVvZiBuYW1lID09PSAnc3RyaW5nJykge1xuICAgIHNwYW4udXBkYXRlTmFtZShuYW1lKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzcGFuTmFtZUhvb2soaW5mbywgZGVmYXVsdE5hbWUpIHtcbiAgaWYgKGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKSA9PT0gY29yZS5nZXREZWZhdWx0SXNvbGF0aW9uU2NvcGUoKSkge1xuICAgIGRlYnVnQnVpbGQuREVCVUdfQlVJTEQgJiYgY29yZS5kZWJ1Zy53YXJuKCdJc29sYXRpb24gc2NvcGUgaXMgc3RpbGwgZGVmYXVsdCBpc29sYXRpb24gc2NvcGUgLSBza2lwcGluZyBzZXR0aW5nIHRyYW5zYWN0aW9uTmFtZScpO1xuICAgIHJldHVybiBkZWZhdWx0TmFtZTtcbiAgfVxuICBpZiAoaW5mby5sYXllclR5cGUgPT09ICdyZXF1ZXN0X2hhbmRsZXInKSB7XG4gICAgLy8gdHlwZSBjYXN0IGIvYyBPdGVsIHVuZm9ydHVuYXRlbHkgdHlwZXMgaW5mby5yZXF1ZXN0IGFzIGFueSA6KFxuICAgIGNvbnN0IHJlcSA9IGluZm8ucmVxdWVzdCA7XG4gICAgY29uc3QgbWV0aG9kID0gcmVxLm1ldGhvZCA/IHJlcS5tZXRob2QudG9VcHBlckNhc2UoKSA6ICdHRVQnO1xuICAgIGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke2luZm8ucm91dGV9YCk7XG4gIH1cbiAgcmV0dXJuIGRlZmF1bHROYW1lO1xufVxuXG5jb25zdCBpbnN0cnVtZW50RXhwcmVzcyA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+XG4gICAgbmV3IGluc3RydW1lbnRhdGlvbkV4cHJlc3MuRXhwcmVzc0luc3RydW1lbnRhdGlvbih7XG4gICAgICByZXF1ZXN0SG9vazogc3BhbiA9PiByZXF1ZXN0SG9vayhzcGFuKSxcbiAgICAgIHNwYW5OYW1lSG9vazogKGluZm8sIGRlZmF1bHROYW1lKSA9PiBzcGFuTmFtZUhvb2soaW5mbywgZGVmYXVsdE5hbWUpLFxuICAgIH0pLFxuKTtcblxuY29uc3QgX2V4cHJlc3NJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50RXhwcmVzcygpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIFtFeHByZXNzXShodHRwczovL2V4cHJlc3Nqcy5jb20vKS5cbiAqXG4gKiBJZiB5b3UgYWxzbyB3YW50IHRvIGNhcHR1cmUgZXJyb3JzLCB5b3UgbmVlZCB0byBjYWxsIGBzZXR1cEV4cHJlc3NFcnJvckhhbmRsZXIoYXBwKWAgYWZ0ZXIgeW91IHNldCB1cCB5b3VyIEV4cHJlc3Mgc2VydmVyLlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtleHByZXNzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL2V4cHJlc3MvKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuZXhwcmVzc0ludGVncmF0aW9uKCldLFxuICogfSlcbiAqIGBgYFxuICovXG5jb25zdCBleHByZXNzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9leHByZXNzSW50ZWdyYXRpb24pO1xuXG4vKipcbiAqIEFuIEV4cHJlc3MtY29tcGF0aWJsZSBlcnJvciBoYW5kbGVyLlxuICovXG5mdW5jdGlvbiBleHByZXNzRXJyb3JIYW5kbGVyKG9wdGlvbnMpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHNlbnRyeUVycm9yTWlkZGxld2FyZShcbiAgICBlcnJvcixcbiAgICByZXF1ZXN0LFxuICAgIHJlcyxcbiAgICBuZXh0LFxuICApIHtcbiAgICBjb25zdCBub3JtYWxpemVkUmVxdWVzdCA9IGNvcmUuaHR0cFJlcXVlc3RUb1JlcXVlc3REYXRhKHJlcXVlc3QpO1xuICAgIC8vIEVuc3VyZSB3ZSB1c2UgdGhlIGV4cHJlc3MtZW5oYW5jZWQgcmVxdWVzdCBoZXJlLCBpbnN0ZWFkIG9mIHRoZSBwbGFpbiBIVFRQIG9uZVxuICAgIC8vIFdoZW4gYW4gZXJyb3IgaGFwcGVucywgdGhlIGBleHByZXNzUmVxdWVzdEhhbmRsZXJgIG1pZGRsZXdhcmUgZG9lcyBub3QgcnVuLCBzbyB3ZSBzZXQgaXQgaGVyZSB0b29cbiAgICBjb3JlLmdldElzb2xhdGlvblNjb3BlKCkuc2V0U0RLUHJvY2Vzc2luZ01ldGFkYXRhKHsgbm9ybWFsaXplZFJlcXVlc3QgfSk7XG5cbiAgICBjb25zdCBzaG91bGRIYW5kbGVFcnJvciA9IG9wdGlvbnM/LnNob3VsZEhhbmRsZUVycm9yIHx8IGRlZmF1bHRTaG91bGRIYW5kbGVFcnJvcjtcblxuICAgIGlmIChzaG91bGRIYW5kbGVFcnJvcihlcnJvcikpIHtcbiAgICAgIGNvbnN0IGV2ZW50SWQgPSBjb3JlLmNhcHR1cmVFeGNlcHRpb24oZXJyb3IsIHsgbWVjaGFuaXNtOiB7IHR5cGU6ICdhdXRvLm1pZGRsZXdhcmUuZXhwcmVzcycsIGhhbmRsZWQ6IGZhbHNlIH0gfSk7XG4gICAgICAocmVzICkuc2VudHJ5ID0gZXZlbnRJZDtcbiAgICB9XG5cbiAgICBuZXh0KGVycm9yKTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZXhwcmVzc1JlcXVlc3RIYW5kbGVyKCkge1xuICByZXR1cm4gZnVuY3Rpb24gc2VudHJ5UmVxdWVzdE1pZGRsZXdhcmUoXG4gICAgcmVxdWVzdCxcbiAgICBfcmVzLFxuICAgIG5leHQsXG4gICkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZWRSZXF1ZXN0ID0gY29yZS5odHRwUmVxdWVzdFRvUmVxdWVzdERhdGEocmVxdWVzdCk7XG4gICAgLy8gRW5zdXJlIHdlIHVzZSB0aGUgZXhwcmVzcy1lbmhhbmNlZCByZXF1ZXN0IGhlcmUsIGluc3RlYWQgb2YgdGhlIHBsYWluIEhUVFAgb25lXG4gICAgY29yZS5nZXRJc29sYXRpb25TY29wZSgpLnNldFNES1Byb2Nlc3NpbmdNZXRhZGF0YSh7IG5vcm1hbGl6ZWRSZXF1ZXN0IH0pO1xuXG4gICAgbmV4dCgpO1xuICB9O1xufVxuXG4vKipcbiAqIEFkZCBhbiBFeHByZXNzIGVycm9yIGhhbmRsZXIgdG8gY2FwdHVyZSBlcnJvcnMgdG8gU2VudHJ5LlxuICpcbiAqIFRoZSBlcnJvciBoYW5kbGVyIG11c3QgYmUgYmVmb3JlIGFueSBvdGhlciBtaWRkbGV3YXJlIGFuZCBhZnRlciBhbGwgY29udHJvbGxlcnMuXG4gKlxuICogQHBhcmFtIGFwcCBUaGUgRXhwcmVzcyBpbnN0YW5jZXNcbiAqIEBwYXJhbSBvcHRpb25zIHtFeHByZXNzSGFuZGxlck9wdGlvbnN9IENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGhhbmRsZXJcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBleHByZXNzID0gcmVxdWlyZShcImV4cHJlc3NcIik7XG4gKlxuICogY29uc3QgYXBwID0gZXhwcmVzcygpO1xuICpcbiAqIC8vIEFkZCB5b3VyIHJvdXRlcywgZXRjLlxuICpcbiAqIC8vIEFkZCB0aGlzIGFmdGVyIGFsbCByb3V0ZXMsXG4gKiAvLyBidXQgYmVmb3JlIGFueSBhbmQgb3RoZXIgZXJyb3ItaGFuZGxpbmcgbWlkZGxld2FyZXMgYXJlIGRlZmluZWRcbiAqIFNlbnRyeS5zZXR1cEV4cHJlc3NFcnJvckhhbmRsZXIoYXBwKTtcbiAqXG4gKiBhcHAubGlzdGVuKDMwMDApO1xuICogYGBgXG4gKi9cbmZ1bmN0aW9uIHNldHVwRXhwcmVzc0Vycm9ySGFuZGxlcihcbiAgYXBwLFxuICBvcHRpb25zLFxuKSB7XG4gIGFwcC51c2UoZXhwcmVzc1JlcXVlc3RIYW5kbGVyKCkpO1xuICBhcHAudXNlKGV4cHJlc3NFcnJvckhhbmRsZXIob3B0aW9ucykpO1xuICBub2RlQ29yZS5lbnN1cmVJc1dyYXBwZWQoYXBwLnVzZSwgJ2V4cHJlc3MnKTtcbn1cblxuZnVuY3Rpb24gZ2V0U3RhdHVzQ29kZUZyb21SZXNwb25zZShlcnJvcikge1xuICBjb25zdCBzdGF0dXNDb2RlID0gZXJyb3Iuc3RhdHVzIHx8IGVycm9yLnN0YXR1c0NvZGUgfHwgZXJyb3Iuc3RhdHVzX2NvZGUgfHwgZXJyb3Iub3V0cHV0Py5zdGF0dXNDb2RlO1xuICByZXR1cm4gc3RhdHVzQ29kZSA/IHBhcnNlSW50KHN0YXR1c0NvZGUgLCAxMCkgOiA1MDA7XG59XG5cbi8qKiBSZXR1cm5zIHRydWUgaWYgcmVzcG9uc2UgY29kZSBpcyBpbnRlcm5hbCBzZXJ2ZXIgZXJyb3IgKi9cbmZ1bmN0aW9uIGRlZmF1bHRTaG91bGRIYW5kbGVFcnJvcihlcnJvcikge1xuICBjb25zdCBzdGF0dXMgPSBnZXRTdGF0dXNDb2RlRnJvbVJlc3BvbnNlKGVycm9yKTtcbiAgcmV0dXJuIHN0YXR1cyA+PSA1MDA7XG59XG5cbmV4cG9ydHMuZXhwcmVzc0Vycm9ySGFuZGxlciA9IGV4cHJlc3NFcnJvckhhbmRsZXI7XG5leHBvcnRzLmV4cHJlc3NJbnRlZ3JhdGlvbiA9IGV4cHJlc3NJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEV4cHJlc3MgPSBpbnN0cnVtZW50RXhwcmVzcztcbmV4cG9ydHMuc2V0dXBFeHByZXNzRXJyb3JIYW5kbGVyID0gc2V0dXBFeHByZXNzRXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZXhwcmVzcy5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js":
/*!***************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js ***!
\***************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst diagnosticsChannel = __webpack_require__(/*! node:diagnostics_channel */ \"node:diagnostics_channel\");\nconst otel = __webpack_require__(/*! @fastify/otel */ \"(ssr)/./node_modules/.pnpm/@fastify+otel@0.18.0_@opentelemetry+api@1.9.1/node_modules/@fastify/otel/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../../debug-build.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\nconst instrumentation = __webpack_require__(/*! ./v3/instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js\");\n\n/**\n * Options for the Fastify integration.\n *\n * `shouldHandleError` - Callback method deciding whether error should be captured and sent to Sentry\n * This is used on Fastify v5 where Sentry handles errors in the diagnostics channel.\n * Fastify v3 and v4 use `setupFastifyErrorHandler` instead.\n *\n * @example\n *\n * ```javascript\n * Sentry.init({\n * integrations: [\n * Sentry.fastifyIntegration({\n * shouldHandleError(_error, _request, reply) {\n * return reply.statusCode >= 500;\n * },\n * });\n * },\n * });\n * ```\n *\n */\n\nconst INTEGRATION_NAME = 'Fastify';\n\nconst instrumentFastifyV3 = nodeCore.generateInstrumentOnce(\n `${INTEGRATION_NAME}.v3`,\n () => new instrumentation.FastifyInstrumentationV3(),\n);\n\nfunction getFastifyIntegration() {\n const client = core.getClient();\n if (!client) {\n return undefined;\n } else {\n return client.getIntegrationByName(INTEGRATION_NAME);\n }\n}\n\nfunction handleFastifyError(\n\n error,\n request,\n reply,\n handlerOrigin,\n) {\n const shouldHandleError = getFastifyIntegration()?.getShouldHandleError() || defaultShouldHandleError;\n // Diagnostics channel runs before the onError hook, so we can use it to check if the handler was already registered\n if (handlerOrigin === 'diagnostics-channel') {\n this.diagnosticsChannelExists = true;\n }\n\n if (this.diagnosticsChannelExists && handlerOrigin === 'onError-hook') {\n debugBuild.DEBUG_BUILD &&\n core.debug.warn(\n 'Fastify error handler was already registered via diagnostics channel.',\n 'You can safely remove `setupFastifyErrorHandler` call and set `shouldHandleError` on the integration options.',\n );\n\n // If the diagnostics channel already exists, we don't need to handle the error again\n return;\n }\n\n if (shouldHandleError(error, request, reply)) {\n core.captureException(error, { mechanism: { handled: false, type: 'auto.function.fastify' } });\n }\n}\n\nconst instrumentFastify = nodeCore.generateInstrumentOnce(`${INTEGRATION_NAME}.v5`, () => {\n const fastifyOtelInstrumentationInstance = new otel.FastifyOtelInstrumentation();\n const plugin = fastifyOtelInstrumentationInstance.plugin();\n\n // This message handler works for Fastify versions 3, 4 and 5\n diagnosticsChannel.subscribe('fastify.initialization', message => {\n const fastifyInstance = (message ).fastify;\n\n fastifyInstance?.register(plugin).after(err => {\n if (err) {\n debugBuild.DEBUG_BUILD && core.debug.error('Failed to setup Fastify instrumentation', err);\n } else {\n instrumentClient();\n\n if (fastifyInstance) {\n instrumentOnRequest(fastifyInstance);\n }\n }\n });\n });\n\n // This diagnostics channel only works on Fastify version 5\n // For versions 3 and 4, we use `setupFastifyErrorHandler` instead\n diagnosticsChannel.subscribe('tracing:fastify.request.handler:error', message => {\n const { error, request, reply } = message\n\n;\n\n handleFastifyError.call(handleFastifyError, error, request, reply, 'diagnostics-channel');\n });\n\n // Returning this as Instrumentation to avoid leaking @fastify/otel types into the public API\n return fastifyOtelInstrumentationInstance ;\n});\n\nconst _fastifyIntegration = (({ shouldHandleError }) => {\n let _shouldHandleError;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n _shouldHandleError = shouldHandleError || defaultShouldHandleError;\n\n instrumentFastifyV3();\n instrumentFastify();\n },\n getShouldHandleError() {\n return _shouldHandleError;\n },\n setShouldHandleError(fn) {\n _shouldHandleError = fn;\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Fastify](https://fastify.dev/).\n *\n * If you also want to capture errors, you need to call `setupFastifyErrorHandler(app)` after you set up your Fastify server.\n *\n * For more information, see the [fastify documentation](https://docs.sentry.io/platforms/javascript/guides/fastify/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.fastifyIntegration()],\n * })\n * ```\n */\nconst fastifyIntegration = core.defineIntegration((options = {}) =>\n _fastifyIntegration(options),\n);\n\n/**\n * Default function to determine if an error should be sent to Sentry\n *\n * 3xx and 4xx errors are not sent by default.\n */\nfunction defaultShouldHandleError(_error, _request, reply) {\n const statusCode = reply.statusCode;\n // 3xx and 4xx errors are not sent by default.\n return statusCode >= 500 || statusCode <= 299;\n}\n\n/**\n * Add an Fastify error handler to capture errors to Sentry.\n *\n * @param fastify The Fastify instance to which to add the error handler\n * @param options Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const Fastify = require(\"fastify\");\n *\n * const app = Fastify();\n *\n * Sentry.setupFastifyErrorHandler(app);\n *\n * // Add your routes, etc.\n *\n * app.listen({ port: 3000 });\n * ```\n */\nfunction setupFastifyErrorHandler(fastify, options) {\n if (options?.shouldHandleError) {\n getFastifyIntegration()?.setShouldHandleError(options.shouldHandleError);\n }\n\n const plugin = Object.assign(\n function (fastify, _options, done) {\n fastify.addHook('onError', async (request, reply, error) => {\n handleFastifyError.call(handleFastifyError, error, request, reply, 'onError-hook');\n });\n done();\n },\n {\n [Symbol.for('skip-override')]: true,\n [Symbol.for('fastify.display-name')]: 'sentry-fastify-error-handler',\n },\n );\n\n fastify.register(plugin);\n}\n\nfunction addFastifySpanAttributes(span) {\n const spanJSON = core.spanToJSON(span);\n const spanName = spanJSON.description;\n const attributes = spanJSON.data;\n\n const type = attributes['fastify.type'];\n\n const isHook = type === 'hook';\n const isHandler = type === spanName?.startsWith('handler -');\n // In @fastify/otel `request-handler` is separated by dash, not underscore\n const isRequestHandler = spanName === 'request' || type === 'request-handler';\n\n // If this is already set, or we have no fastify span, no need to process again...\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || (!isHandler && !isRequestHandler && !isHook)) {\n return;\n }\n\n const opPrefix = isHook ? 'hook' : isHandler ? 'middleware' : isRequestHandler ? 'request_handler' : '<unknown>';\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.fastify',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${opPrefix}.fastify`,\n });\n\n const attrName = attributes['fastify.name'] || attributes['plugin.name'] || attributes['hook.name'];\n if (typeof attrName === 'string') {\n // Try removing `fastify -> ` and `@fastify/otel -> ` prefixes\n // This is a bit of a hack, and not always working for all spans\n // But it's the best we can do without a proper API\n const updatedName = attrName.replace(/^fastify -> /, '').replace(/^@fastify\\/otel -> /, '');\n\n span.updateName(updatedName);\n }\n}\n\nfunction instrumentClient() {\n const client = core.getClient();\n if (client) {\n client.on('spanStart', (span) => {\n addFastifySpanAttributes(span);\n });\n }\n}\n\nfunction instrumentOnRequest(fastify) {\n fastify.addHook('onRequest', async (request, _reply) => {\n if (request.opentelemetry) {\n const { span } = request.opentelemetry();\n\n if (span) {\n addFastifySpanAttributes(span);\n }\n }\n\n const routeName = request.routeOptions?.url;\n const method = request.method || 'GET';\n\n core.getIsolationScope().setTransactionName(`${method} ${routeName}`);\n });\n}\n\nexports.fastifyIntegration = fastifyIntegration;\nexports.instrumentFastify = instrumentFastify;\nexports.instrumentFastifyV3 = instrumentFastifyV3;\nexports.setupFastifyErrorHandler = setupFastifyErrorHandler;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS9pbmRleC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwyQkFBMkIsbUJBQU8sQ0FBQywwREFBMEI7QUFDN0QsYUFBYSxtQkFBTyxDQUFDLG1JQUFlO0FBQ3BDLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsbUJBQW1CLG1CQUFPLENBQUMsbUlBQXlCO0FBQ3BELHdCQUF3QixtQkFBTyxDQUFDLHVLQUF5Qjs7QUFFekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWLFFBQVE7QUFDUixNQUFNO0FBQ04sSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBLEtBQUssaUJBQWlCO0FBQ3RCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxtQ0FBbUMsYUFBYSxpREFBaUQ7QUFDakc7QUFDQTs7QUFFQSw2REFBNkQsaUJBQWlCO0FBQzlFO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBLFlBQVksd0JBQXdCOztBQUVwQzs7QUFFQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTtBQUNBLENBQUM7O0FBRUQsZ0NBQWdDLG1CQUFtQjtBQUNuRDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBLCtEQUErRDtBQUMvRDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsWUFBWTtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLDRDQUE0QyxTQUFTO0FBQ3JELEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsY0FBYyxPQUFPOztBQUVyQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBLG1EQUFtRCxRQUFRLEVBQUUsVUFBVTtBQUN2RSxHQUFHO0FBQ0g7O0FBRUEsMEJBQTBCO0FBQzFCLHlCQUF5QjtBQUN6QiwyQkFBMkI7QUFDM0IsZ0NBQWdDO0FBQ2hDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2Zhc3RpZnkvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGRpYWdub3N0aWNzQ2hhbm5lbCA9IHJlcXVpcmUoJ25vZGU6ZGlhZ25vc3RpY3NfY2hhbm5lbCcpO1xuY29uc3Qgb3RlbCA9IHJlcXVpcmUoJ0BmYXN0aWZ5L290ZWwnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi8uLi8uLi9kZWJ1Zy1idWlsZC5qcycpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnLi92My9pbnN0cnVtZW50YXRpb24uanMnKTtcblxuLyoqXG4gKiBPcHRpb25zIGZvciB0aGUgRmFzdGlmeSBpbnRlZ3JhdGlvbi5cbiAqXG4gKiBgc2hvdWxkSGFuZGxlRXJyb3JgIC0gQ2FsbGJhY2sgbWV0aG9kIGRlY2lkaW5nIHdoZXRoZXIgZXJyb3Igc2hvdWxkIGJlIGNhcHR1cmVkIGFuZCBzZW50IHRvIFNlbnRyeVxuICogVGhpcyBpcyB1c2VkIG9uIEZhc3RpZnkgdjUgd2hlcmUgU2VudHJ5IGhhbmRsZXMgZXJyb3JzIGluIHRoZSBkaWFnbm9zdGljcyBjaGFubmVsLlxuICogRmFzdGlmeSB2MyBhbmQgdjQgdXNlIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXJgIGluc3RlYWQuXG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5mYXN0aWZ5SW50ZWdyYXRpb24oe1xuICogICAgICAgc2hvdWxkSGFuZGxlRXJyb3IoX2Vycm9yLCBfcmVxdWVzdCwgcmVwbHkpIHtcbiAqICAgICAgICAgcmV0dXJuIHJlcGx5LnN0YXR1c0NvZGUgPj0gNTAwO1xuICogICAgICAgfSxcbiAqICAgICB9KTtcbiAqICAgfSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICovXG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnRmFzdGlmeSc7XG5cbmNvbnN0IGluc3RydW1lbnRGYXN0aWZ5VjMgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBgJHtJTlRFR1JBVElPTl9OQU1FfS52M2AsXG4gICgpID0+IG5ldyBpbnN0cnVtZW50YXRpb24uRmFzdGlmeUluc3RydW1lbnRhdGlvblYzKCksXG4pO1xuXG5mdW5jdGlvbiBnZXRGYXN0aWZ5SW50ZWdyYXRpb24oKSB7XG4gIGNvbnN0IGNsaWVudCA9IGNvcmUuZ2V0Q2xpZW50KCk7XG4gIGlmICghY2xpZW50KSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gY2xpZW50LmdldEludGVncmF0aW9uQnlOYW1lKElOVEVHUkFUSU9OX05BTUUpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGhhbmRsZUZhc3RpZnlFcnJvcihcblxuICBlcnJvcixcbiAgcmVxdWVzdCxcbiAgcmVwbHksXG4gIGhhbmRsZXJPcmlnaW4sXG4pIHtcbiAgY29uc3Qgc2hvdWxkSGFuZGxlRXJyb3IgPSBnZXRGYXN0aWZ5SW50ZWdyYXRpb24oKT8uZ2V0U2hvdWxkSGFuZGxlRXJyb3IoKSB8fCBkZWZhdWx0U2hvdWxkSGFuZGxlRXJyb3I7XG4gIC8vIERpYWdub3N0aWNzIGNoYW5uZWwgcnVucyBiZWZvcmUgdGhlIG9uRXJyb3IgaG9vaywgc28gd2UgY2FuIHVzZSBpdCB0byBjaGVjayBpZiB0aGUgaGFuZGxlciB3YXMgYWxyZWFkeSByZWdpc3RlcmVkXG4gIGlmIChoYW5kbGVyT3JpZ2luID09PSAnZGlhZ25vc3RpY3MtY2hhbm5lbCcpIHtcbiAgICB0aGlzLmRpYWdub3N0aWNzQ2hhbm5lbEV4aXN0cyA9IHRydWU7XG4gIH1cblxuICBpZiAodGhpcy5kaWFnbm9zdGljc0NoYW5uZWxFeGlzdHMgJiYgaGFuZGxlck9yaWdpbiA9PT0gJ29uRXJyb3ItaG9vaycpIHtcbiAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmXG4gICAgICBjb3JlLmRlYnVnLndhcm4oXG4gICAgICAgICdGYXN0aWZ5IGVycm9yIGhhbmRsZXIgd2FzIGFscmVhZHkgcmVnaXN0ZXJlZCB2aWEgZGlhZ25vc3RpY3MgY2hhbm5lbC4nLFxuICAgICAgICAnWW91IGNhbiBzYWZlbHkgcmVtb3ZlIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXJgIGNhbGwgYW5kIHNldCBgc2hvdWxkSGFuZGxlRXJyb3JgIG9uIHRoZSBpbnRlZ3JhdGlvbiBvcHRpb25zLicsXG4gICAgICApO1xuXG4gICAgLy8gSWYgdGhlIGRpYWdub3N0aWNzIGNoYW5uZWwgYWxyZWFkeSBleGlzdHMsIHdlIGRvbid0IG5lZWQgdG8gaGFuZGxlIHRoZSBlcnJvciBhZ2FpblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmIChzaG91bGRIYW5kbGVFcnJvcihlcnJvciwgcmVxdWVzdCwgcmVwbHkpKSB7XG4gICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGVycm9yLCB7IG1lY2hhbmlzbTogeyBoYW5kbGVkOiBmYWxzZSwgdHlwZTogJ2F1dG8uZnVuY3Rpb24uZmFzdGlmeScgfSB9KTtcbiAgfVxufVxuXG5jb25zdCBpbnN0cnVtZW50RmFzdGlmeSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoYCR7SU5URUdSQVRJT05fTkFNRX0udjVgLCAoKSA9PiB7XG4gIGNvbnN0IGZhc3RpZnlPdGVsSW5zdHJ1bWVudGF0aW9uSW5zdGFuY2UgPSBuZXcgb3RlbC5GYXN0aWZ5T3RlbEluc3RydW1lbnRhdGlvbigpO1xuICBjb25zdCBwbHVnaW4gPSBmYXN0aWZ5T3RlbEluc3RydW1lbnRhdGlvbkluc3RhbmNlLnBsdWdpbigpO1xuXG4gIC8vIFRoaXMgbWVzc2FnZSBoYW5kbGVyIHdvcmtzIGZvciBGYXN0aWZ5IHZlcnNpb25zIDMsIDQgYW5kIDVcbiAgZGlhZ25vc3RpY3NDaGFubmVsLnN1YnNjcmliZSgnZmFzdGlmeS5pbml0aWFsaXphdGlvbicsIG1lc3NhZ2UgPT4ge1xuICAgIGNvbnN0IGZhc3RpZnlJbnN0YW5jZSA9IChtZXNzYWdlICkuZmFzdGlmeTtcblxuICAgIGZhc3RpZnlJbnN0YW5jZT8ucmVnaXN0ZXIocGx1Z2luKS5hZnRlcihlcnIgPT4ge1xuICAgICAgaWYgKGVycikge1xuICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcuZXJyb3IoJ0ZhaWxlZCB0byBzZXR1cCBGYXN0aWZ5IGluc3RydW1lbnRhdGlvbicsIGVycik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpbnN0cnVtZW50Q2xpZW50KCk7XG5cbiAgICAgICAgaWYgKGZhc3RpZnlJbnN0YW5jZSkge1xuICAgICAgICAgIGluc3RydW1lbnRPblJlcXVlc3QoZmFzdGlmeUluc3RhbmNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9KTtcblxuICAvLyBUaGlzIGRpYWdub3N0aWNzIGNoYW5uZWwgb25seSB3b3JrcyBvbiBGYXN0aWZ5IHZlcnNpb24gNVxuICAvLyBGb3IgdmVyc2lvbnMgMyBhbmQgNCwgd2UgdXNlIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXJgIGluc3RlYWRcbiAgZGlhZ25vc3RpY3NDaGFubmVsLnN1YnNjcmliZSgndHJhY2luZzpmYXN0aWZ5LnJlcXVlc3QuaGFuZGxlcjplcnJvcicsIG1lc3NhZ2UgPT4ge1xuICAgIGNvbnN0IHsgZXJyb3IsIHJlcXVlc3QsIHJlcGx5IH0gPSBtZXNzYWdlXG5cbjtcblxuICAgIGhhbmRsZUZhc3RpZnlFcnJvci5jYWxsKGhhbmRsZUZhc3RpZnlFcnJvciwgZXJyb3IsIHJlcXVlc3QsIHJlcGx5LCAnZGlhZ25vc3RpY3MtY2hhbm5lbCcpO1xuICB9KTtcblxuICAvLyBSZXR1cm5pbmcgdGhpcyBhcyBJbnN0cnVtZW50YXRpb24gdG8gYXZvaWQgbGVha2luZyBAZmFzdGlmeS9vdGVsIHR5cGVzIGludG8gdGhlIHB1YmxpYyBBUElcbiAgcmV0dXJuIGZhc3RpZnlPdGVsSW5zdHJ1bWVudGF0aW9uSW5zdGFuY2UgO1xufSk7XG5cbmNvbnN0IF9mYXN0aWZ5SW50ZWdyYXRpb24gPSAoKHsgc2hvdWxkSGFuZGxlRXJyb3IgfSkgPT4ge1xuICBsZXQgX3Nob3VsZEhhbmRsZUVycm9yO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBfc2hvdWxkSGFuZGxlRXJyb3IgPSBzaG91bGRIYW5kbGVFcnJvciB8fCBkZWZhdWx0U2hvdWxkSGFuZGxlRXJyb3I7XG5cbiAgICAgIGluc3RydW1lbnRGYXN0aWZ5VjMoKTtcbiAgICAgIGluc3RydW1lbnRGYXN0aWZ5KCk7XG4gICAgfSxcbiAgICBnZXRTaG91bGRIYW5kbGVFcnJvcigpIHtcbiAgICAgIHJldHVybiBfc2hvdWxkSGFuZGxlRXJyb3I7XG4gICAgfSxcbiAgICBzZXRTaG91bGRIYW5kbGVFcnJvcihmbikge1xuICAgICAgX3Nob3VsZEhhbmRsZUVycm9yID0gZm47XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgW0Zhc3RpZnldKGh0dHBzOi8vZmFzdGlmeS5kZXYvKS5cbiAqXG4gKiBJZiB5b3UgYWxzbyB3YW50IHRvIGNhcHR1cmUgZXJyb3JzLCB5b3UgbmVlZCB0byBjYWxsIGBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXIoYXBwKWAgYWZ0ZXIgeW91IHNldCB1cCB5b3VyIEZhc3RpZnkgc2VydmVyLlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtmYXN0aWZ5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL2Zhc3RpZnkvKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuZmFzdGlmeUludGVncmF0aW9uKCldLFxuICogfSlcbiAqIGBgYFxuICovXG5jb25zdCBmYXN0aWZ5SW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChvcHRpb25zID0ge30pID0+XG4gIF9mYXN0aWZ5SW50ZWdyYXRpb24ob3B0aW9ucyksXG4pO1xuXG4vKipcbiAqIERlZmF1bHQgZnVuY3Rpb24gdG8gZGV0ZXJtaW5lIGlmIGFuIGVycm9yIHNob3VsZCBiZSBzZW50IHRvIFNlbnRyeVxuICpcbiAqIDN4eCBhbmQgNHh4IGVycm9ycyBhcmUgbm90IHNlbnQgYnkgZGVmYXVsdC5cbiAqL1xuZnVuY3Rpb24gZGVmYXVsdFNob3VsZEhhbmRsZUVycm9yKF9lcnJvciwgX3JlcXVlc3QsIHJlcGx5KSB7XG4gIGNvbnN0IHN0YXR1c0NvZGUgPSByZXBseS5zdGF0dXNDb2RlO1xuICAvLyAzeHggYW5kIDR4eCBlcnJvcnMgYXJlIG5vdCBzZW50IGJ5IGRlZmF1bHQuXG4gIHJldHVybiBzdGF0dXNDb2RlID49IDUwMCB8fCBzdGF0dXNDb2RlIDw9IDI5OTtcbn1cblxuLyoqXG4gKiBBZGQgYW4gRmFzdGlmeSBlcnJvciBoYW5kbGVyIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gZmFzdGlmeSBUaGUgRmFzdGlmeSBpbnN0YW5jZSB0byB3aGljaCB0byBhZGQgdGhlIGVycm9yIGhhbmRsZXJcbiAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGhhbmRsZXJcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBGYXN0aWZ5ID0gcmVxdWlyZShcImZhc3RpZnlcIik7XG4gKlxuICogY29uc3QgYXBwID0gRmFzdGlmeSgpO1xuICpcbiAqIFNlbnRyeS5zZXR1cEZhc3RpZnlFcnJvckhhbmRsZXIoYXBwKTtcbiAqXG4gKiAvLyBBZGQgeW91ciByb3V0ZXMsIGV0Yy5cbiAqXG4gKiBhcHAubGlzdGVuKHsgcG9ydDogMzAwMCB9KTtcbiAqIGBgYFxuICovXG5mdW5jdGlvbiBzZXR1cEZhc3RpZnlFcnJvckhhbmRsZXIoZmFzdGlmeSwgb3B0aW9ucykge1xuICBpZiAob3B0aW9ucz8uc2hvdWxkSGFuZGxlRXJyb3IpIHtcbiAgICBnZXRGYXN0aWZ5SW50ZWdyYXRpb24oKT8uc2V0U2hvdWxkSGFuZGxlRXJyb3Iob3B0aW9ucy5zaG91bGRIYW5kbGVFcnJvcik7XG4gIH1cblxuICBjb25zdCBwbHVnaW4gPSBPYmplY3QuYXNzaWduKFxuICAgIGZ1bmN0aW9uIChmYXN0aWZ5LCBfb3B0aW9ucywgZG9uZSkge1xuICAgICAgZmFzdGlmeS5hZGRIb29rKCdvbkVycm9yJywgYXN5bmMgKHJlcXVlc3QsIHJlcGx5LCBlcnJvcikgPT4ge1xuICAgICAgICBoYW5kbGVGYXN0aWZ5RXJyb3IuY2FsbChoYW5kbGVGYXN0aWZ5RXJyb3IsIGVycm9yLCByZXF1ZXN0LCByZXBseSwgJ29uRXJyb3ItaG9vaycpO1xuICAgICAgfSk7XG4gICAgICBkb25lKCk7XG4gICAgfSxcbiAgICB7XG4gICAgICBbU3ltYm9sLmZvcignc2tpcC1vdmVycmlkZScpXTogdHJ1ZSxcbiAgICAgIFtTeW1ib2wuZm9yKCdmYXN0aWZ5LmRpc3BsYXktbmFtZScpXTogJ3NlbnRyeS1mYXN0aWZ5LWVycm9yLWhhbmRsZXInLFxuICAgIH0sXG4gICk7XG5cbiAgZmFzdGlmeS5yZWdpc3RlcihwbHVnaW4pO1xufVxuXG5mdW5jdGlvbiBhZGRGYXN0aWZ5U3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBzcGFuSlNPTiA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgY29uc3Qgc3Bhbk5hbWUgPSBzcGFuSlNPTi5kZXNjcmlwdGlvbjtcbiAgY29uc3QgYXR0cmlidXRlcyA9IHNwYW5KU09OLmRhdGE7XG5cbiAgY29uc3QgdHlwZSA9IGF0dHJpYnV0ZXNbJ2Zhc3RpZnkudHlwZSddO1xuXG4gIGNvbnN0IGlzSG9vayA9IHR5cGUgPT09ICdob29rJztcbiAgY29uc3QgaXNIYW5kbGVyID0gdHlwZSA9PT0gc3Bhbk5hbWU/LnN0YXJ0c1dpdGgoJ2hhbmRsZXIgLScpO1xuICAvLyBJbiBAZmFzdGlmeS9vdGVsIGByZXF1ZXN0LWhhbmRsZXJgIGlzIHNlcGFyYXRlZCBieSBkYXNoLCBub3QgdW5kZXJzY29yZVxuICBjb25zdCBpc1JlcXVlc3RIYW5kbGVyID0gc3Bhbk5hbWUgPT09ICdyZXF1ZXN0JyB8fCB0eXBlID09PSAncmVxdWVzdC1oYW5kbGVyJztcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIGZhc3RpZnkgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF0gfHwgKCFpc0hhbmRsZXIgJiYgIWlzUmVxdWVzdEhhbmRsZXIgJiYgIWlzSG9vaykpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBvcFByZWZpeCA9IGlzSG9vayA/ICdob29rJyA6IGlzSGFuZGxlciA/ICdtaWRkbGV3YXJlJyA6IGlzUmVxdWVzdEhhbmRsZXIgPyAncmVxdWVzdF9oYW5kbGVyJyA6ICc8dW5rbm93bj4nO1xuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU5dOiAnYXV0by5odHRwLm90ZWwuZmFzdGlmeScsXG4gICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF06IGAke29wUHJlZml4fS5mYXN0aWZ5YCxcbiAgfSk7XG5cbiAgY29uc3QgYXR0ck5hbWUgPSBhdHRyaWJ1dGVzWydmYXN0aWZ5Lm5hbWUnXSB8fCBhdHRyaWJ1dGVzWydwbHVnaW4ubmFtZSddIHx8IGF0dHJpYnV0ZXNbJ2hvb2submFtZSddO1xuICBpZiAodHlwZW9mIGF0dHJOYW1lID09PSAnc3RyaW5nJykge1xuICAgIC8vIFRyeSByZW1vdmluZyBgZmFzdGlmeSAtPiBgIGFuZCBgQGZhc3RpZnkvb3RlbCAtPiBgIHByZWZpeGVzXG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2ssIGFuZCBub3QgYWx3YXlzIHdvcmtpbmcgZm9yIGFsbCBzcGFuc1xuICAgIC8vIEJ1dCBpdCdzIHRoZSBiZXN0IHdlIGNhbiBkbyB3aXRob3V0IGEgcHJvcGVyIEFQSVxuICAgIGNvbnN0IHVwZGF0ZWROYW1lID0gYXR0ck5hbWUucmVwbGFjZSgvXmZhc3RpZnkgLT4gLywgJycpLnJlcGxhY2UoL15AZmFzdGlmeVxcL290ZWwgLT4gLywgJycpO1xuXG4gICAgc3Bhbi51cGRhdGVOYW1lKHVwZGF0ZWROYW1lKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnN0cnVtZW50Q2xpZW50KCkge1xuICBjb25zdCBjbGllbnQgPSBjb3JlLmdldENsaWVudCgpO1xuICBpZiAoY2xpZW50KSB7XG4gICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCAoc3BhbikgPT4ge1xuICAgICAgYWRkRmFzdGlmeVNwYW5BdHRyaWJ1dGVzKHNwYW4pO1xuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIGluc3RydW1lbnRPblJlcXVlc3QoZmFzdGlmeSkge1xuICBmYXN0aWZ5LmFkZEhvb2soJ29uUmVxdWVzdCcsIGFzeW5jIChyZXF1ZXN0LCBfcmVwbHkpID0+IHtcbiAgICBpZiAocmVxdWVzdC5vcGVudGVsZW1ldHJ5KSB7XG4gICAgICBjb25zdCB7IHNwYW4gfSA9IHJlcXVlc3Qub3BlbnRlbGVtZXRyeSgpO1xuXG4gICAgICBpZiAoc3Bhbikge1xuICAgICAgICBhZGRGYXN0aWZ5U3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgcm91dGVOYW1lID0gcmVxdWVzdC5yb3V0ZU9wdGlvbnM/LnVybDtcbiAgICBjb25zdCBtZXRob2QgPSByZXF1ZXN0Lm1ldGhvZCB8fCAnR0VUJztcblxuICAgIGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke3JvdXRlTmFtZX1gKTtcbiAgfSk7XG59XG5cbmV4cG9ydHMuZmFzdGlmeUludGVncmF0aW9uID0gZmFzdGlmeUludGVncmF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50RmFzdGlmeSA9IGluc3RydW1lbnRGYXN0aWZ5O1xuZXhwb3J0cy5pbnN0cnVtZW50RmFzdGlmeVYzID0gaW5zdHJ1bWVudEZhc3RpZnlWMztcbmV4cG9ydHMuc2V0dXBGYXN0aWZ5RXJyb3JIYW5kbGVyID0gc2V0dXBGYXN0aWZ5RXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\n// Vendored from https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/constants.ts\n/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nconst spanRequestSymbol = Symbol('opentelemetry.instrumentation.fastify.request_active_span');\n\nexports.spanRequestSymbol = spanRequestSymbol;\n//# sourceMappingURL=constants.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My9jb25zdGFudHMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEseUJBQXlCO0FBQ3pCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2Zhc3RpZnkvdjMvY29uc3RhbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG4vLyBWZW5kb3JlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvYmxvYi80MDdmNjE1OTFiYTY5YTM5YTY5MDgyNjQzNzlkNGQ5OGE0OGRiZWM0L3BsdWdpbnMvbm9kZS9vcGVudGVsZW1ldHJ5LWluc3RydW1lbnRhdGlvbi1mYXN0aWZ5L3NyYy9jb25zdGFudHMudHNcbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmNvbnN0IHNwYW5SZXF1ZXN0U3ltYm9sID0gU3ltYm9sKCdvcGVudGVsZW1ldHJ5Lmluc3RydW1lbnRhdGlvbi5mYXN0aWZ5LnJlcXVlc3RfYWN0aXZlX3NwYW4nKTtcblxuZXhwb3J0cy5zcGFuUmVxdWVzdFN5bWJvbCA9IHNwYW5SZXF1ZXN0U3ltYm9sO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29uc3RhbnRzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js ***!
\*********************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\n// Vendored from https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/enums/AttributeNames.ts\n//\n/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexports.AttributeNames = void 0; (function (AttributeNames) {\n const FASTIFY_NAME = 'fastify.name'; AttributeNames[\"FASTIFY_NAME\"] = FASTIFY_NAME;\n const FASTIFY_TYPE = 'fastify.type'; AttributeNames[\"FASTIFY_TYPE\"] = FASTIFY_TYPE;\n const HOOK_NAME = 'hook.name'; AttributeNames[\"HOOK_NAME\"] = HOOK_NAME;\n const PLUGIN_NAME = 'plugin.name'; AttributeNames[\"PLUGIN_NAME\"] = PLUGIN_NAME;\n})(exports.AttributeNames || (exports.AttributeNames = {}));\n\nexports.FastifyTypes = void 0; (function (FastifyTypes) {\n const MIDDLEWARE = 'middleware'; FastifyTypes[\"MIDDLEWARE\"] = MIDDLEWARE;\n const REQUEST_HANDLER = 'request_handler'; FastifyTypes[\"REQUEST_HANDLER\"] = REQUEST_HANDLER;\n})(exports.FastifyTypes || (exports.FastifyTypes = {}));\n\nexports.FastifyNames = void 0; (function (FastifyNames) {\n const MIDDLEWARE = 'middleware'; FastifyNames[\"MIDDLEWARE\"] = MIDDLEWARE;\n const REQUEST_HANDLER = 'request handler'; FastifyNames[\"REQUEST_HANDLER\"] = REQUEST_HANDLER;\n})(exports.FastifyNames || (exports.FastifyNames = {}));\n//# sourceMappingURL=AttributeNames.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My9lbnVtcy9BdHRyaWJ1dGVOYW1lcy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHNCQUFzQixXQUFXO0FBQ2pDLHVDQUF1QztBQUN2Qyx1Q0FBdUM7QUFDdkMsaUNBQWlDO0FBQ2pDLHFDQUFxQztBQUNyQyxDQUFDLDZCQUE2QixzQkFBc0IsS0FBSzs7QUFFekQsb0JBQW9CLFdBQVc7QUFDL0IsbUNBQW1DO0FBQ25DLDZDQUE2QztBQUM3QyxDQUFDLDJCQUEyQixvQkFBb0IsS0FBSzs7QUFFckQsb0JBQW9CLFdBQVc7QUFDL0IsbUNBQW1DO0FBQ25DLDZDQUE2QztBQUM3QyxDQUFDLDJCQUEyQixvQkFBb0IsS0FBSztBQUNyRCIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9mYXN0aWZ5L3YzL2VudW1zL0F0dHJpYnV0ZU5hbWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG4vLyBWZW5kb3JlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvYmxvYi80MDdmNjE1OTFiYTY5YTM5YTY5MDgyNjQzNzlkNGQ5OGE0OGRiZWM0L3BsdWdpbnMvbm9kZS9vcGVudGVsZW1ldHJ5LWluc3RydW1lbnRhdGlvbi1mYXN0aWZ5L3NyYy9lbnVtcy9BdHRyaWJ1dGVOYW1lcy50c1xuLy9cbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmV4cG9ydHMuQXR0cmlidXRlTmFtZXMgPSB2b2lkIDA7IChmdW5jdGlvbiAoQXR0cmlidXRlTmFtZXMpIHtcbiAgY29uc3QgRkFTVElGWV9OQU1FID0gJ2Zhc3RpZnkubmFtZSc7IEF0dHJpYnV0ZU5hbWVzW1wiRkFTVElGWV9OQU1FXCJdID0gRkFTVElGWV9OQU1FO1xuICBjb25zdCBGQVNUSUZZX1RZUEUgPSAnZmFzdGlmeS50eXBlJzsgQXR0cmlidXRlTmFtZXNbXCJGQVNUSUZZX1RZUEVcIl0gPSBGQVNUSUZZX1RZUEU7XG4gIGNvbnN0IEhPT0tfTkFNRSA9ICdob29rLm5hbWUnOyBBdHRyaWJ1dGVOYW1lc1tcIkhPT0tfTkFNRVwiXSA9IEhPT0tfTkFNRTtcbiAgY29uc3QgUExVR0lOX05BTUUgPSAncGx1Z2luLm5hbWUnOyBBdHRyaWJ1dGVOYW1lc1tcIlBMVUdJTl9OQU1FXCJdID0gUExVR0lOX05BTUU7XG59KShleHBvcnRzLkF0dHJpYnV0ZU5hbWVzIHx8IChleHBvcnRzLkF0dHJpYnV0ZU5hbWVzID0ge30pKTtcblxuZXhwb3J0cy5GYXN0aWZ5VHlwZXMgPSB2b2lkIDA7IChmdW5jdGlvbiAoRmFzdGlmeVR5cGVzKSB7XG4gIGNvbnN0IE1JRERMRVdBUkUgPSAnbWlkZGxld2FyZSc7IEZhc3RpZnlUeXBlc1tcIk1JRERMRVdBUkVcIl0gPSBNSURETEVXQVJFO1xuICBjb25zdCBSRVFVRVNUX0hBTkRMRVIgPSAncmVxdWVzdF9oYW5kbGVyJzsgRmFzdGlmeVR5cGVzW1wiUkVRVUVTVF9IQU5ETEVSXCJdID0gUkVRVUVTVF9IQU5ETEVSO1xufSkoZXhwb3J0cy5GYXN0aWZ5VHlwZXMgfHwgKGV4cG9ydHMuRmFzdGlmeVR5cGVzID0ge30pKTtcblxuZXhwb3J0cy5GYXN0aWZ5TmFtZXMgPSB2b2lkIDA7IChmdW5jdGlvbiAoRmFzdGlmeU5hbWVzKSB7XG4gIGNvbnN0IE1JRERMRVdBUkUgPSAnbWlkZGxld2FyZSc7IEZhc3RpZnlOYW1lc1tcIk1JRERMRVdBUkVcIl0gPSBNSURETEVXQVJFO1xuICBjb25zdCBSRVFVRVNUX0hBTkRMRVIgPSAncmVxdWVzdCBoYW5kbGVyJzsgRmFzdGlmeU5hbWVzW1wiUkVRVUVTVF9IQU5ETEVSXCJdID0gUkVRVUVTVF9IQU5ETEVSO1xufSkoZXhwb3J0cy5GYXN0aWZ5TmFtZXMgfHwgKGV4cG9ydHMuRmFzdGlmeU5hbWVzID0ge30pKTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUF0dHJpYnV0ZU5hbWVzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js":
/*!****************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js ***!
\****************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst core = __webpack_require__(/*! @opentelemetry/core */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+core@2.6.1_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/core/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core$1 = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst AttributeNames = __webpack_require__(/*! ./enums/AttributeNames.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/enums/AttributeNames.js\");\nconst utils = __webpack_require__(/*! ./utils.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js\");\n\n// Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/instrumentation.ts\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/no-this-alias */\n/* eslint-disable jsdoc/require-jsdoc */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n\n/** @knipignore */\n\nconst PACKAGE_VERSION = '0.1.0';\n\nconst PACKAGE_NAME = '@sentry/instrumentation-fastify-v3';\nconst ANONYMOUS_NAME = 'anonymous';\n\n// The instrumentation creates a span for invocations of lifecycle hook handlers\n// that take `(request, reply, ...[, done])` arguments. Currently this is all\n// lifecycle hooks except `onRequestAbort`.\n// https://fastify.dev/docs/latest/Reference/Hooks\nconst hooksNamesToWrap = new Set([\n 'onTimeout',\n 'onRequest',\n 'preParsing',\n 'preValidation',\n 'preSerialization',\n 'preHandler',\n 'onSend',\n 'onResponse',\n 'onError',\n]);\n\n/**\n * Fastify instrumentation for OpenTelemetry\n */\nclass FastifyInstrumentationV3 extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super(PACKAGE_NAME, PACKAGE_VERSION, config);\n }\n\n init() {\n return [\n new instrumentation.InstrumentationNodeModuleDefinition('fastify', ['>=3.0.0 <4'], moduleExports => {\n return this._patchConstructor(moduleExports);\n }),\n ];\n }\n\n _hookOnRequest() {\n const instrumentation = this;\n\n return function onRequest(request, reply, done) {\n if (!instrumentation.isEnabled()) {\n return done();\n }\n instrumentation._wrap(reply, 'send', instrumentation._patchSend());\n\n const anyRequest = request ;\n\n const rpcMetadata = core.getRPCMetadata(api.context.active());\n const routeName = anyRequest.routeOptions\n ? anyRequest.routeOptions.url // since fastify@4.10.0\n : request.routerPath;\n if (routeName && rpcMetadata?.type === core.RPCType.HTTP) {\n rpcMetadata.route = routeName;\n }\n\n const method = request.method || 'GET';\n\n core$1.getIsolationScope().setTransactionName(`${method} ${routeName}`);\n done();\n };\n }\n\n _wrapHandler(\n pluginName,\n hookName,\n original,\n syncFunctionWithDone,\n ) {\n const instrumentation = this;\n this._diag.debug('Patching fastify route.handler function');\n\n return function ( ...args) {\n if (!instrumentation.isEnabled()) {\n return original.apply(this, args);\n }\n\n const name = original.name || pluginName || ANONYMOUS_NAME;\n const spanName = `${AttributeNames.FastifyNames.MIDDLEWARE} - ${name}`;\n\n const reply = args[1] ;\n\n const span = utils.startSpan(reply, instrumentation.tracer, spanName, {\n [AttributeNames.AttributeNames.FASTIFY_TYPE]: AttributeNames.FastifyTypes.MIDDLEWARE,\n [AttributeNames.AttributeNames.PLUGIN_NAME]: pluginName,\n [AttributeNames.AttributeNames.HOOK_NAME]: hookName,\n });\n\n const origDone = syncFunctionWithDone && (args[args.length - 1] );\n if (origDone) {\n args[args.length - 1] = function (...doneArgs) {\n utils.endSpan(reply);\n origDone.apply(this, doneArgs);\n };\n }\n\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n return utils.safeExecuteInTheMiddleMaybePromise(\n () => {\n return original.apply(this, args);\n },\n err => {\n if (err instanceof Error) {\n span.setStatus({\n code: api.SpanStatusCode.ERROR,\n message: err.message,\n });\n span.recordException(err);\n }\n // async hooks should end the span as soon as the promise is resolved\n if (!syncFunctionWithDone) {\n utils.endSpan(reply);\n }\n },\n );\n });\n };\n }\n\n _wrapAddHook() {\n const instrumentation = this;\n this._diag.debug('Patching fastify server.addHook function');\n\n // biome-ignore lint/complexity/useArrowFunction: <explanation>\n return function (original) {\n return function wrappedAddHook( ...args) {\n const name = args[0] ;\n const handler = args[1] ;\n const pluginName = this.pluginName;\n if (!hooksNamesToWrap.has(name)) {\n return original.apply(this, args);\n }\n\n const syncFunctionWithDone =\n typeof args[args.length - 1] === 'function' && handler.constructor.name !== 'AsyncFunction';\n\n return original.apply(this, [\n name,\n instrumentation._wrapHandler(pluginName, name, handler, syncFunctionWithDone),\n ] );\n };\n };\n }\n\n _patchConstructor(moduleExports\n\n) {\n const instrumentation = this;\n\n function fastify( ...args) {\n const app = moduleExports.fastify.apply(this, args);\n app.addHook('onRequest', instrumentation._hookOnRequest());\n app.addHook('preHandler', instrumentation._hookPreHandler());\n\n instrumentClient();\n\n instrumentation._wrap(app, 'addHook', instrumentation._wrapAddHook());\n\n return app;\n }\n\n if (moduleExports.errorCodes !== undefined) {\n fastify.errorCodes = moduleExports.errorCodes;\n }\n fastify.fastify = fastify;\n fastify.default = fastify;\n return fastify;\n }\n\n _patchSend() {\n const instrumentation$1 = this;\n this._diag.debug('Patching fastify reply.send function');\n\n return function patchSend(original) {\n return function send( ...args) {\n const maybeError = args[0];\n\n if (!instrumentation$1.isEnabled()) {\n return original.apply(this, args);\n }\n\n return instrumentation.safeExecuteInTheMiddle(\n () => {\n return original.apply(this, args);\n },\n err => {\n if (!err && maybeError instanceof Error) {\n // eslint-disable-next-line no-param-reassign\n err = maybeError;\n }\n utils.endSpan(this, err);\n },\n );\n };\n };\n }\n\n _hookPreHandler() {\n const instrumentation$1 = this;\n this._diag.debug('Patching fastify preHandler function');\n\n return function preHandler( request, reply, done) {\n if (!instrumentation$1.isEnabled()) {\n return done();\n }\n const anyRequest = request ;\n\n const handler = anyRequest.routeOptions?.handler || anyRequest.context?.handler;\n const handlerName = handler?.name.startsWith('bound ') ? handler.name.substring(6) : handler?.name;\n const spanName = `${AttributeNames.FastifyNames.REQUEST_HANDLER} - ${handlerName || this.pluginName || ANONYMOUS_NAME}`;\n\n const spanAttributes = {\n [AttributeNames.AttributeNames.PLUGIN_NAME]: this.pluginName,\n [AttributeNames.AttributeNames.FASTIFY_TYPE]: AttributeNames.FastifyTypes.REQUEST_HANDLER,\n // eslint-disable-next-line deprecation/deprecation\n [semanticConventions.SEMATTRS_HTTP_ROUTE]: anyRequest.routeOptions\n ? anyRequest.routeOptions.url // since fastify@4.10.0\n : request.routerPath,\n };\n if (handlerName) {\n spanAttributes[AttributeNames.AttributeNames.FASTIFY_NAME] = handlerName;\n }\n const span = utils.startSpan(reply, instrumentation$1.tracer, spanName, spanAttributes);\n\n addFastifyV3SpanAttributes(span);\n\n const { requestHook } = instrumentation$1.getConfig();\n if (requestHook) {\n instrumentation.safeExecuteInTheMiddle(\n () => requestHook(span, { request }),\n e => {\n if (e) {\n instrumentation$1._diag.error('request hook failed', e);\n }\n },\n true,\n );\n }\n\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n done();\n });\n };\n }\n}\n\nfunction instrumentClient() {\n const client = core$1.getClient();\n if (client) {\n client.on('spanStart', (span) => {\n addFastifyV3SpanAttributes(span);\n });\n }\n}\n\nfunction addFastifyV3SpanAttributes(span) {\n const attributes = core$1.spanToJSON(span).data;\n\n // this is one of: middleware, request_handler\n const type = attributes['fastify.type'];\n\n // If this is already set, or we have no fastify span, no need to process again...\n if (attributes[core$1.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core$1.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.fastify',\n [core$1.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.fastify`,\n });\n\n // Also update the name, we don't need to \"middleware - \" prefix\n const name = attributes['fastify.name'] || attributes['plugin.name'] || attributes['hook.name'];\n if (typeof name === 'string') {\n // Try removing `fastify -> ` and `@fastify/otel -> ` prefixes\n // This is a bit of a hack, and not always working for all spans\n // But it's the best we can do without a proper API\n const updatedName = name.replace(/^fastify -> /, '').replace(/^@fastify\\/otel -> /, '');\n\n span.updateName(updatedName);\n }\n}\n\nexports.FastifyInstrumentationV3 = FastifyInstrumentationV3;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My9pbnN0cnVtZW50YXRpb24uanMiLCJtYXBwaW5ncyI6IkFBQUEsQ0FBQyxvREFBb0QseUNBQXlDLDBDQUEwQyw4Q0FBOEMsb0RBQW9ELG1EQUFtRCxxREFBcUQsaUJBQWlCOztBQUVuVyxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLGFBQWEsbUJBQU8sQ0FBQyw4SkFBcUI7QUFDMUMsd0JBQXdCLG1CQUFPLENBQUMsaU1BQWdDO0FBQ2hFLDRCQUE0QixtQkFBTyxDQUFDLHNMQUFxQztBQUN6RSxlQUFlLG1CQUFPLENBQUMsa0hBQWM7QUFDckMsdUJBQXVCLG1CQUFPLENBQUMsOEtBQTJCO0FBQzFELGNBQWMsbUJBQU8sQ0FBQyxnSkFBWTs7QUFFbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsdURBQXVELFFBQVEsRUFBRSxVQUFVO0FBQzNFO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsMEJBQTBCLHdDQUF3QyxJQUFJLEtBQUs7O0FBRTNFOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsMEJBQTBCLDZDQUE2QyxJQUFJLGlEQUFpRDs7QUFFNUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBLGNBQWMsY0FBYztBQUM1QjtBQUNBO0FBQ0Esb0NBQW9DLFNBQVM7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDhDQUE4QyxLQUFLO0FBQ25ELEdBQUc7O0FBRUg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBLGdDQUFnQztBQUNoQyIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9mYXN0aWZ5L3YzL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2NvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3Qgc2VtYW50aWNDb252ZW50aW9ucyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3NlbWFudGljLWNvbnZlbnRpb25zJyk7XG5jb25zdCBjb3JlJDEgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IEF0dHJpYnV0ZU5hbWVzID0gcmVxdWlyZSgnLi9lbnVtcy9BdHRyaWJ1dGVOYW1lcy5qcycpO1xuY29uc3QgdXRpbHMgPSByZXF1aXJlKCcuL3V0aWxzLmpzJyk7XG5cbi8vIFZlbmRvcmVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvYmxvYi80MDdmNjE1OTFiYTY5YTM5YTY5MDgyNjQzNzlkNGQ5OGE0OGRiZWM0L3BsdWdpbnMvbm9kZS9vcGVudGVsZW1ldHJ5LWluc3RydW1lbnRhdGlvbi1mYXN0aWZ5L3NyYy9pbnN0cnVtZW50YXRpb24udHNcbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBqc2RvYy9yZXF1aXJlLWpzZG9jICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGUgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtbWVtYmVyLWFjY2VzcyAqL1xuXG4vKiogQGtuaXBpZ25vcmUgKi9cblxuY29uc3QgUEFDS0FHRV9WRVJTSU9OID0gJzAuMS4wJztcblxuY29uc3QgUEFDS0FHRV9OQU1FID0gJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWZhc3RpZnktdjMnO1xuY29uc3QgQU5PTllNT1VTX05BTUUgPSAnYW5vbnltb3VzJztcblxuLy8gVGhlIGluc3RydW1lbnRhdGlvbiBjcmVhdGVzIGEgc3BhbiBmb3IgaW52b2NhdGlvbnMgb2YgbGlmZWN5Y2xlIGhvb2sgaGFuZGxlcnNcbi8vIHRoYXQgdGFrZSBgKHJlcXVlc3QsIHJlcGx5LCAuLi5bLCBkb25lXSlgIGFyZ3VtZW50cy4gQ3VycmVudGx5IHRoaXMgaXMgYWxsXG4vLyBsaWZlY3ljbGUgaG9va3MgZXhjZXB0IGBvblJlcXVlc3RBYm9ydGAuXG4vLyBodHRwczovL2Zhc3RpZnkuZGV2L2RvY3MvbGF0ZXN0L1JlZmVyZW5jZS9Ib29rc1xuY29uc3QgaG9va3NOYW1lc1RvV3JhcCA9IG5ldyBTZXQoW1xuICAnb25UaW1lb3V0JyxcbiAgJ29uUmVxdWVzdCcsXG4gICdwcmVQYXJzaW5nJyxcbiAgJ3ByZVZhbGlkYXRpb24nLFxuICAncHJlU2VyaWFsaXphdGlvbicsXG4gICdwcmVIYW5kbGVyJyxcbiAgJ29uU2VuZCcsXG4gICdvblJlc3BvbnNlJyxcbiAgJ29uRXJyb3InLFxuXSk7XG5cbi8qKlxuICogRmFzdGlmeSBpbnN0cnVtZW50YXRpb24gZm9yIE9wZW5UZWxlbWV0cnlcbiAqL1xuY2xhc3MgRmFzdGlmeUluc3RydW1lbnRhdGlvblYzIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0ge30pIHtcbiAgICBzdXBlcihQQUNLQUdFX05BTUUsIFBBQ0tBR0VfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gICBpbml0KCkge1xuICAgIHJldHVybiBbXG4gICAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKCdmYXN0aWZ5JywgWyc+PTMuMC4wIDw0J10sIG1vZHVsZUV4cG9ydHMgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGF0Y2hDb25zdHJ1Y3Rvcihtb2R1bGVFeHBvcnRzKTtcbiAgICAgIH0pLFxuICAgIF07XG4gIH1cblxuICAgX2hvb2tPblJlcXVlc3QoKSB7XG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gdGhpcztcblxuICAgIHJldHVybiBmdW5jdGlvbiBvblJlcXVlc3QocmVxdWVzdCwgcmVwbHksIGRvbmUpIHtcbiAgICAgIGlmICghaW5zdHJ1bWVudGF0aW9uLmlzRW5hYmxlZCgpKSB7XG4gICAgICAgIHJldHVybiBkb25lKCk7XG4gICAgICB9XG4gICAgICBpbnN0cnVtZW50YXRpb24uX3dyYXAocmVwbHksICdzZW5kJywgaW5zdHJ1bWVudGF0aW9uLl9wYXRjaFNlbmQoKSk7XG5cbiAgICAgIGNvbnN0IGFueVJlcXVlc3QgPSByZXF1ZXN0IDtcblxuICAgICAgY29uc3QgcnBjTWV0YWRhdGEgPSBjb3JlLmdldFJQQ01ldGFkYXRhKGFwaS5jb250ZXh0LmFjdGl2ZSgpKTtcbiAgICAgIGNvbnN0IHJvdXRlTmFtZSA9IGFueVJlcXVlc3Qucm91dGVPcHRpb25zXG4gICAgICAgID8gYW55UmVxdWVzdC5yb3V0ZU9wdGlvbnMudXJsIC8vIHNpbmNlIGZhc3RpZnlANC4xMC4wXG4gICAgICAgIDogcmVxdWVzdC5yb3V0ZXJQYXRoO1xuICAgICAgaWYgKHJvdXRlTmFtZSAmJiBycGNNZXRhZGF0YT8udHlwZSA9PT0gY29yZS5SUENUeXBlLkhUVFApIHtcbiAgICAgICAgcnBjTWV0YWRhdGEucm91dGUgPSByb3V0ZU5hbWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1ldGhvZCA9IHJlcXVlc3QubWV0aG9kIHx8ICdHRVQnO1xuXG4gICAgICBjb3JlJDEuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke3JvdXRlTmFtZX1gKTtcbiAgICAgIGRvbmUoKTtcbiAgICB9O1xuICB9XG5cbiAgIF93cmFwSGFuZGxlcihcbiAgICBwbHVnaW5OYW1lLFxuICAgIGhvb2tOYW1lLFxuICAgIG9yaWdpbmFsLFxuICAgIHN5bmNGdW5jdGlvbldpdGhEb25lLFxuICApIHtcbiAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSB0aGlzO1xuICAgIHRoaXMuX2RpYWcuZGVidWcoJ1BhdGNoaW5nIGZhc3RpZnkgcm91dGUuaGFuZGxlciBmdW5jdGlvbicpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uICggLi4uYXJncykge1xuICAgICAgaWYgKCFpbnN0cnVtZW50YXRpb24uaXNFbmFibGVkKCkpIHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBuYW1lID0gb3JpZ2luYWwubmFtZSB8fCBwbHVnaW5OYW1lIHx8IEFOT05ZTU9VU19OQU1FO1xuICAgICAgY29uc3Qgc3Bhbk5hbWUgPSBgJHtBdHRyaWJ1dGVOYW1lcy5GYXN0aWZ5TmFtZXMuTUlERExFV0FSRX0gLSAke25hbWV9YDtcblxuICAgICAgY29uc3QgcmVwbHkgPSBhcmdzWzFdIDtcblxuICAgICAgY29uc3Qgc3BhbiA9IHV0aWxzLnN0YXJ0U3BhbihyZXBseSwgaW5zdHJ1bWVudGF0aW9uLnRyYWNlciwgc3Bhbk5hbWUsIHtcbiAgICAgICAgW0F0dHJpYnV0ZU5hbWVzLkF0dHJpYnV0ZU5hbWVzLkZBU1RJRllfVFlQRV06IEF0dHJpYnV0ZU5hbWVzLkZhc3RpZnlUeXBlcy5NSURETEVXQVJFLFxuICAgICAgICBbQXR0cmlidXRlTmFtZXMuQXR0cmlidXRlTmFtZXMuUExVR0lOX05BTUVdOiBwbHVnaW5OYW1lLFxuICAgICAgICBbQXR0cmlidXRlTmFtZXMuQXR0cmlidXRlTmFtZXMuSE9PS19OQU1FXTogaG9va05hbWUsXG4gICAgICB9KTtcblxuICAgICAgY29uc3Qgb3JpZ0RvbmUgPSBzeW5jRnVuY3Rpb25XaXRoRG9uZSAmJiAoYXJnc1thcmdzLmxlbmd0aCAtIDFdICk7XG4gICAgICBpZiAob3JpZ0RvbmUpIHtcbiAgICAgICAgYXJnc1thcmdzLmxlbmd0aCAtIDFdID0gZnVuY3Rpb24gKC4uLmRvbmVBcmdzKSB7XG4gICAgICAgICAgdXRpbHMuZW5kU3BhbihyZXBseSk7XG4gICAgICAgICAgb3JpZ0RvbmUuYXBwbHkodGhpcywgZG9uZUFyZ3MpO1xuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYXBpLmNvbnRleHQud2l0aChhcGkudHJhY2Uuc2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSwgc3BhbiksICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHV0aWxzLnNhZmVFeGVjdXRlSW5UaGVNaWRkbGVNYXliZVByb21pc2UoXG4gICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgICBzcGFuLnNldFN0YXR1cyh7XG4gICAgICAgICAgICAgICAgY29kZTogYXBpLlNwYW5TdGF0dXNDb2RlLkVSUk9SLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGVyci5tZXNzYWdlLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgc3Bhbi5yZWNvcmRFeGNlcHRpb24oZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGFzeW5jIGhvb2tzIHNob3VsZCBlbmQgdGhlIHNwYW4gYXMgc29vbiBhcyB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZFxuICAgICAgICAgICAgaWYgKCFzeW5jRnVuY3Rpb25XaXRoRG9uZSkge1xuICAgICAgICAgICAgICB1dGlscy5lbmRTcGFuKHJlcGx5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfTtcbiAgfVxuXG4gICBfd3JhcEFkZEhvb2soKSB7XG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gdGhpcztcbiAgICB0aGlzLl9kaWFnLmRlYnVnKCdQYXRjaGluZyBmYXN0aWZ5IHNlcnZlci5hZGRIb29rIGZ1bmN0aW9uJyk7XG5cbiAgICAvLyBiaW9tZS1pZ25vcmUgbGludC9jb21wbGV4aXR5L3VzZUFycm93RnVuY3Rpb246IDxleHBsYW5hdGlvbj5cbiAgICByZXR1cm4gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gd3JhcHBlZEFkZEhvb2soIC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgbmFtZSA9IGFyZ3NbMF0gO1xuICAgICAgICBjb25zdCBoYW5kbGVyID0gYXJnc1sxXSA7XG4gICAgICAgIGNvbnN0IHBsdWdpbk5hbWUgPSB0aGlzLnBsdWdpbk5hbWU7XG4gICAgICAgIGlmICghaG9va3NOYW1lc1RvV3JhcC5oYXMobmFtZSkpIHtcbiAgICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzeW5jRnVuY3Rpb25XaXRoRG9uZSA9XG4gICAgICAgICAgdHlwZW9mIGFyZ3NbYXJncy5sZW5ndGggLSAxXSA9PT0gJ2Z1bmN0aW9uJyAmJiBoYW5kbGVyLmNvbnN0cnVjdG9yLm5hbWUgIT09ICdBc3luY0Z1bmN0aW9uJztcblxuICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgW1xuICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihwbHVnaW5OYW1lLCBuYW1lLCBoYW5kbGVyLCBzeW5jRnVuY3Rpb25XaXRoRG9uZSksXG4gICAgICAgIF0gKTtcbiAgICAgIH07XG4gICAgfTtcbiAgfVxuXG4gICBfcGF0Y2hDb25zdHJ1Y3Rvcihtb2R1bGVFeHBvcnRzXG5cbikge1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICBmdW5jdGlvbiBmYXN0aWZ5KCAuLi5hcmdzKSB7XG4gICAgICBjb25zdCBhcHAgPSBtb2R1bGVFeHBvcnRzLmZhc3RpZnkuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICBhcHAuYWRkSG9vaygnb25SZXF1ZXN0JywgaW5zdHJ1bWVudGF0aW9uLl9ob29rT25SZXF1ZXN0KCkpO1xuICAgICAgYXBwLmFkZEhvb2soJ3ByZUhhbmRsZXInLCBpbnN0cnVtZW50YXRpb24uX2hvb2tQcmVIYW5kbGVyKCkpO1xuXG4gICAgICBpbnN0cnVtZW50Q2xpZW50KCk7XG5cbiAgICAgIGluc3RydW1lbnRhdGlvbi5fd3JhcChhcHAsICdhZGRIb29rJywgaW5zdHJ1bWVudGF0aW9uLl93cmFwQWRkSG9vaygpKTtcblxuICAgICAgcmV0dXJuIGFwcDtcbiAgICB9XG5cbiAgICBpZiAobW9kdWxlRXhwb3J0cy5lcnJvckNvZGVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGZhc3RpZnkuZXJyb3JDb2RlcyA9IG1vZHVsZUV4cG9ydHMuZXJyb3JDb2RlcztcbiAgICB9XG4gICAgZmFzdGlmeS5mYXN0aWZ5ID0gZmFzdGlmeTtcbiAgICBmYXN0aWZ5LmRlZmF1bHQgPSBmYXN0aWZ5O1xuICAgIHJldHVybiBmYXN0aWZ5O1xuICB9XG5cbiAgIF9wYXRjaFNlbmQoKSB7XG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uJDEgPSB0aGlzO1xuICAgIHRoaXMuX2RpYWcuZGVidWcoJ1BhdGNoaW5nIGZhc3RpZnkgcmVwbHkuc2VuZCBmdW5jdGlvbicpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIHBhdGNoU2VuZChvcmlnaW5hbCkge1xuICAgICAgcmV0dXJuIGZ1bmN0aW9uIHNlbmQoIC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgbWF5YmVFcnJvciA9IGFyZ3NbMF07XG5cbiAgICAgICAgaWYgKCFpbnN0cnVtZW50YXRpb24kMS5pc0VuYWJsZWQoKSkge1xuICAgICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpbnN0cnVtZW50YXRpb24uc2FmZUV4ZWN1dGVJblRoZU1pZGRsZShcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnIgPT4ge1xuICAgICAgICAgICAgaWYgKCFlcnIgJiYgbWF5YmVFcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgICAgICAgICAgICBlcnIgPSBtYXliZUVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdXRpbHMuZW5kU3Bhbih0aGlzLCBlcnIpO1xuICAgICAgICAgIH0sXG4gICAgICAgICk7XG4gICAgICB9O1xuICAgIH07XG4gIH1cblxuICAgX2hvb2tQcmVIYW5kbGVyKCkge1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiQxID0gdGhpcztcbiAgICB0aGlzLl9kaWFnLmRlYnVnKCdQYXRjaGluZyBmYXN0aWZ5IHByZUhhbmRsZXIgZnVuY3Rpb24nKTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBwcmVIYW5kbGVyKCByZXF1ZXN0LCByZXBseSwgZG9uZSkge1xuICAgICAgaWYgKCFpbnN0cnVtZW50YXRpb24kMS5pc0VuYWJsZWQoKSkge1xuICAgICAgICByZXR1cm4gZG9uZSgpO1xuICAgICAgfVxuICAgICAgY29uc3QgYW55UmVxdWVzdCA9IHJlcXVlc3QgO1xuXG4gICAgICBjb25zdCBoYW5kbGVyID0gYW55UmVxdWVzdC5yb3V0ZU9wdGlvbnM/LmhhbmRsZXIgfHwgYW55UmVxdWVzdC5jb250ZXh0Py5oYW5kbGVyO1xuICAgICAgY29uc3QgaGFuZGxlck5hbWUgPSBoYW5kbGVyPy5uYW1lLnN0YXJ0c1dpdGgoJ2JvdW5kICcpID8gaGFuZGxlci5uYW1lLnN1YnN0cmluZyg2KSA6IGhhbmRsZXI/Lm5hbWU7XG4gICAgICBjb25zdCBzcGFuTmFtZSA9IGAke0F0dHJpYnV0ZU5hbWVzLkZhc3RpZnlOYW1lcy5SRVFVRVNUX0hBTkRMRVJ9IC0gJHtoYW5kbGVyTmFtZSB8fCB0aGlzLnBsdWdpbk5hbWUgfHwgQU5PTllNT1VTX05BTUV9YDtcblxuICAgICAgY29uc3Qgc3BhbkF0dHJpYnV0ZXMgPSB7XG4gICAgICAgIFtBdHRyaWJ1dGVOYW1lcy5BdHRyaWJ1dGVOYW1lcy5QTFVHSU5fTkFNRV06IHRoaXMucGx1Z2luTmFtZSxcbiAgICAgICAgW0F0dHJpYnV0ZU5hbWVzLkF0dHJpYnV0ZU5hbWVzLkZBU1RJRllfVFlQRV06IEF0dHJpYnV0ZU5hbWVzLkZhc3RpZnlUeXBlcy5SRVFVRVNUX0hBTkRMRVIsXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkZXByZWNhdGlvbi9kZXByZWNhdGlvblxuICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5TRU1BVFRSU19IVFRQX1JPVVRFXTogYW55UmVxdWVzdC5yb3V0ZU9wdGlvbnNcbiAgICAgICAgICA/IGFueVJlcXVlc3Qucm91dGVPcHRpb25zLnVybCAvLyBzaW5jZSBmYXN0aWZ5QDQuMTAuMFxuICAgICAgICAgIDogcmVxdWVzdC5yb3V0ZXJQYXRoLFxuICAgICAgfTtcbiAgICAgIGlmIChoYW5kbGVyTmFtZSkge1xuICAgICAgICBzcGFuQXR0cmlidXRlc1tBdHRyaWJ1dGVOYW1lcy5BdHRyaWJ1dGVOYW1lcy5GQVNUSUZZX05BTUVdID0gaGFuZGxlck5hbWU7XG4gICAgICB9XG4gICAgICBjb25zdCBzcGFuID0gdXRpbHMuc3RhcnRTcGFuKHJlcGx5LCBpbnN0cnVtZW50YXRpb24kMS50cmFjZXIsIHNwYW5OYW1lLCBzcGFuQXR0cmlidXRlcyk7XG5cbiAgICAgIGFkZEZhc3RpZnlWM1NwYW5BdHRyaWJ1dGVzKHNwYW4pO1xuXG4gICAgICBjb25zdCB7IHJlcXVlc3RIb29rIH0gPSBpbnN0cnVtZW50YXRpb24kMS5nZXRDb25maWcoKTtcbiAgICAgIGlmIChyZXF1ZXN0SG9vaykge1xuICAgICAgICBpbnN0cnVtZW50YXRpb24uc2FmZUV4ZWN1dGVJblRoZU1pZGRsZShcbiAgICAgICAgICAoKSA9PiByZXF1ZXN0SG9vayhzcGFuLCB7IHJlcXVlc3QgfSksXG4gICAgICAgICAgZSA9PiB7XG4gICAgICAgICAgICBpZiAoZSkge1xuICAgICAgICAgICAgICBpbnN0cnVtZW50YXRpb24kMS5fZGlhZy5lcnJvcigncmVxdWVzdCBob29rIGZhaWxlZCcsIGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFwaS5jb250ZXh0LndpdGgoYXBpLnRyYWNlLnNldFNwYW4oYXBpLmNvbnRleHQuYWN0aXZlKCksIHNwYW4pLCAoKSA9PiB7XG4gICAgICAgIGRvbmUoKTtcbiAgICAgIH0pO1xuICAgIH07XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5zdHJ1bWVudENsaWVudCgpIHtcbiAgY29uc3QgY2xpZW50ID0gY29yZSQxLmdldENsaWVudCgpO1xuICBpZiAoY2xpZW50KSB7XG4gICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCAoc3BhbikgPT4ge1xuICAgICAgYWRkRmFzdGlmeVYzU3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gYWRkRmFzdGlmeVYzU3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBhdHRyaWJ1dGVzID0gY29yZSQxLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcblxuICAvLyB0aGlzIGlzIG9uZSBvZjogbWlkZGxld2FyZSwgcmVxdWVzdF9oYW5kbGVyXG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydmYXN0aWZ5LnR5cGUnXTtcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIGZhc3RpZnkgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUkMS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QXSB8fCAhdHlwZSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgW2NvcmUkMS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTl06ICdhdXRvLmh0dHAub3RlbC5mYXN0aWZ5JyxcbiAgICBbY29yZSQxLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiBgJHt0eXBlfS5mYXN0aWZ5YCxcbiAgfSk7XG5cbiAgLy8gQWxzbyB1cGRhdGUgdGhlIG5hbWUsIHdlIGRvbid0IG5lZWQgdG8gXCJtaWRkbGV3YXJlIC0gXCIgcHJlZml4XG4gIGNvbnN0IG5hbWUgPSBhdHRyaWJ1dGVzWydmYXN0aWZ5Lm5hbWUnXSB8fCBhdHRyaWJ1dGVzWydwbHVnaW4ubmFtZSddIHx8IGF0dHJpYnV0ZXNbJ2hvb2submFtZSddO1xuICBpZiAodHlwZW9mIG5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgLy8gVHJ5IHJlbW92aW5nIGBmYXN0aWZ5IC0+IGAgYW5kIGBAZmFzdGlmeS9vdGVsIC0+IGAgcHJlZml4ZXNcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjaywgYW5kIG5vdCBhbHdheXMgd29ya2luZyBmb3IgYWxsIHNwYW5zXG4gICAgLy8gQnV0IGl0J3MgdGhlIGJlc3Qgd2UgY2FuIGRvIHdpdGhvdXQgYSBwcm9wZXIgQVBJXG4gICAgY29uc3QgdXBkYXRlZE5hbWUgPSBuYW1lLnJlcGxhY2UoL15mYXN0aWZ5IC0+IC8sICcnKS5yZXBsYWNlKC9eQGZhc3RpZnlcXC9vdGVsIC0+IC8sICcnKTtcblxuICAgIHNwYW4udXBkYXRlTmFtZSh1cGRhdGVkTmFtZSk7XG4gIH1cbn1cblxuZXhwb3J0cy5GYXN0aWZ5SW5zdHJ1bWVudGF0aW9uVjMgPSBGYXN0aWZ5SW5zdHJ1bWVudGF0aW9uVjM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/constants.js\");\n\n// Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/407f61591ba69a39a6908264379d4d98a48dbec4/plugins/node/opentelemetry-instrumentation-fastify/src/utils.ts\n/* eslint-disable jsdoc/require-jsdoc */\n/* eslint-disable @typescript-eslint/no-dynamic-delete */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n/**\n * Starts Span\n * @param reply - reply function\n * @param tracer - tracer\n * @param spanName - span name\n * @param spanAttributes - span attributes\n */\nfunction startSpan(\n reply,\n tracer,\n spanName,\n spanAttributes = {},\n) {\n const span = tracer.startSpan(spanName, { attributes: spanAttributes });\n\n const spans = reply[constants.spanRequestSymbol] || [];\n spans.push(span);\n\n Object.defineProperty(reply, constants.spanRequestSymbol, {\n enumerable: false,\n configurable: true,\n value: spans,\n });\n\n return span;\n}\n\n/**\n * Ends span\n * @param reply - reply function\n * @param err - error\n */\nfunction endSpan(reply, err) {\n const spans = reply[constants.spanRequestSymbol] || [];\n // there is no active span, or it has already ended\n if (!spans.length) {\n return;\n }\n // biome-ignore lint/complexity/noForEach: <explanation>\n spans.forEach((span) => {\n if (err) {\n span.setStatus({\n code: api.SpanStatusCode.ERROR,\n message: err.message,\n });\n span.recordException(err);\n }\n span.end();\n });\n delete reply[constants.spanRequestSymbol];\n}\n\n// @TODO after approve add this to instrumentation package and replace usage\n// when it will be released\n\n/**\n * This function handles the missing case from instrumentation package when\n * execute can either return a promise or void. And using async is not an\n * option as it is producing unwanted side effects.\n * @param execute - function to be executed\n * @param onFinish - function called when function executed\n * @param preventThrowingError - prevent to throw error when execute\n * function fails\n */\n\nfunction safeExecuteInTheMiddleMaybePromise(\n execute,\n onFinish,\n preventThrowingError,\n) {\n let error;\n let result = undefined;\n try {\n result = execute();\n\n if (isPromise(result)) {\n result.then(\n res => onFinish(undefined, res),\n err => onFinish(err),\n );\n }\n } catch (e) {\n error = e;\n } finally {\n if (!isPromise(result)) {\n onFinish(error, result);\n if (error && true) {\n // eslint-disable-next-line no-unsafe-finally\n throw error;\n }\n }\n // eslint-disable-next-line no-unsafe-finally\n return result;\n }\n}\n\nfunction isPromise(val) {\n return (\n (typeof val === 'object' && val && typeof Object.getOwnPropertyDescriptor(val, 'then')?.value === 'function') ||\n false\n );\n}\n\nexports.endSpan = endSpan;\nexports.safeExecuteInTheMiddleMaybePromise = safeExecuteInTheMiddleMaybePromise;\nexports.startSpan = startSpan;\n//# sourceMappingURL=utils.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My91dGlscy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLGtCQUFrQixtQkFBTyxDQUFDLHdKQUFnQjs7QUFFMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0EsNENBQTRDLDRCQUE0Qjs7QUFFeEU7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsZUFBZTtBQUNmLDBDQUEwQztBQUMxQyxpQkFBaUI7QUFDakIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmFzdGlmeS92My91dGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCBjb25zdGFudHMgPSByZXF1aXJlKCcuL2NvbnN0YW50cy5qcycpO1xuXG4vLyBWZW5kb3JlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vb3Blbi10ZWxlbWV0cnkvb3BlbnRlbGVtZXRyeS1qcy1jb250cmliL2Jsb2IvNDA3ZjYxNTkxYmE2OWEzOWE2OTA4MjY0Mzc5ZDRkOThhNDhkYmVjNC9wbHVnaW5zL25vZGUvb3BlbnRlbGVtZXRyeS1pbnN0cnVtZW50YXRpb24tZmFzdGlmeS9zcmMvdXRpbHMudHNcbi8qIGVzbGludC1kaXNhYmxlIGpzZG9jL3JlcXVpcmUtanNkb2MgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1keW5hbWljLWRlbGV0ZSAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1tZW1iZXItYWNjZXNzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGUgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cblxuLyoqXG4gKiBTdGFydHMgU3BhblxuICogQHBhcmFtIHJlcGx5IC0gcmVwbHkgZnVuY3Rpb25cbiAqIEBwYXJhbSB0cmFjZXIgLSB0cmFjZXJcbiAqIEBwYXJhbSBzcGFuTmFtZSAtIHNwYW4gbmFtZVxuICogQHBhcmFtIHNwYW5BdHRyaWJ1dGVzIC0gc3BhbiBhdHRyaWJ1dGVzXG4gKi9cbmZ1bmN0aW9uIHN0YXJ0U3BhbihcbiAgcmVwbHksXG4gIHRyYWNlcixcbiAgc3Bhbk5hbWUsXG4gIHNwYW5BdHRyaWJ1dGVzID0ge30sXG4pIHtcbiAgY29uc3Qgc3BhbiA9IHRyYWNlci5zdGFydFNwYW4oc3Bhbk5hbWUsIHsgYXR0cmlidXRlczogc3BhbkF0dHJpYnV0ZXMgfSk7XG5cbiAgY29uc3Qgc3BhbnMgPSByZXBseVtjb25zdGFudHMuc3BhblJlcXVlc3RTeW1ib2xdIHx8IFtdO1xuICBzcGFucy5wdXNoKHNwYW4pO1xuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyZXBseSwgY29uc3RhbnRzLnNwYW5SZXF1ZXN0U3ltYm9sLCB7XG4gICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIHZhbHVlOiBzcGFucyxcbiAgfSk7XG5cbiAgcmV0dXJuIHNwYW47XG59XG5cbi8qKlxuICogRW5kcyBzcGFuXG4gKiBAcGFyYW0gcmVwbHkgLSByZXBseSBmdW5jdGlvblxuICogQHBhcmFtIGVyciAtIGVycm9yXG4gKi9cbmZ1bmN0aW9uIGVuZFNwYW4ocmVwbHksIGVycikge1xuICBjb25zdCBzcGFucyA9IHJlcGx5W2NvbnN0YW50cy5zcGFuUmVxdWVzdFN5bWJvbF0gfHwgW107XG4gIC8vIHRoZXJlIGlzIG5vIGFjdGl2ZSBzcGFuLCBvciBpdCBoYXMgYWxyZWFkeSBlbmRlZFxuICBpZiAoIXNwYW5zLmxlbmd0aCkge1xuICAgIHJldHVybjtcbiAgfVxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9jb21wbGV4aXR5L25vRm9yRWFjaDogPGV4cGxhbmF0aW9uPlxuICBzcGFucy5mb3JFYWNoKChzcGFuKSA9PiB7XG4gICAgaWYgKGVycikge1xuICAgICAgc3Bhbi5zZXRTdGF0dXMoe1xuICAgICAgICBjb2RlOiBhcGkuU3BhblN0YXR1c0NvZGUuRVJST1IsXG4gICAgICAgIG1lc3NhZ2U6IGVyci5tZXNzYWdlLFxuICAgICAgfSk7XG4gICAgICBzcGFuLnJlY29yZEV4Y2VwdGlvbihlcnIpO1xuICAgIH1cbiAgICBzcGFuLmVuZCgpO1xuICB9KTtcbiAgZGVsZXRlIHJlcGx5W2NvbnN0YW50cy5zcGFuUmVxdWVzdFN5bWJvbF07XG59XG5cbi8vIEBUT0RPIGFmdGVyIGFwcHJvdmUgYWRkIHRoaXMgdG8gaW5zdHJ1bWVudGF0aW9uIHBhY2thZ2UgYW5kIHJlcGxhY2UgdXNhZ2Vcbi8vIHdoZW4gaXQgd2lsbCBiZSByZWxlYXNlZFxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaGFuZGxlcyB0aGUgbWlzc2luZyBjYXNlIGZyb20gaW5zdHJ1bWVudGF0aW9uIHBhY2thZ2Ugd2hlblxuICogZXhlY3V0ZSBjYW4gZWl0aGVyIHJldHVybiBhIHByb21pc2Ugb3Igdm9pZC4gQW5kIHVzaW5nIGFzeW5jIGlzIG5vdCBhblxuICogb3B0aW9uIGFzIGl0IGlzIHByb2R1Y2luZyB1bndhbnRlZCBzaWRlIGVmZmVjdHMuXG4gKiBAcGFyYW0gZXhlY3V0ZSAtIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkXG4gKiBAcGFyYW0gb25GaW5pc2ggLSBmdW5jdGlvbiBjYWxsZWQgd2hlbiBmdW5jdGlvbiBleGVjdXRlZFxuICogQHBhcmFtIHByZXZlbnRUaHJvd2luZ0Vycm9yIC0gcHJldmVudCB0byB0aHJvdyBlcnJvciB3aGVuIGV4ZWN1dGVcbiAqIGZ1bmN0aW9uIGZhaWxzXG4gKi9cblxuZnVuY3Rpb24gc2FmZUV4ZWN1dGVJblRoZU1pZGRsZU1heWJlUHJvbWlzZShcbiAgZXhlY3V0ZSxcbiAgb25GaW5pc2gsXG4gIHByZXZlbnRUaHJvd2luZ0Vycm9yLFxuKSB7XG4gIGxldCBlcnJvcjtcbiAgbGV0IHJlc3VsdCA9IHVuZGVmaW5lZDtcbiAgdHJ5IHtcbiAgICByZXN1bHQgPSBleGVjdXRlKCk7XG5cbiAgICBpZiAoaXNQcm9taXNlKHJlc3VsdCkpIHtcbiAgICAgIHJlc3VsdC50aGVuKFxuICAgICAgICByZXMgPT4gb25GaW5pc2godW5kZWZpbmVkLCByZXMpLFxuICAgICAgICBlcnIgPT4gb25GaW5pc2goZXJyKSxcbiAgICAgICk7XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgZXJyb3IgPSBlO1xuICB9IGZpbmFsbHkge1xuICAgIGlmICghaXNQcm9taXNlKHJlc3VsdCkpIHtcbiAgICAgIG9uRmluaXNoKGVycm9yLCByZXN1bHQpO1xuICAgICAgaWYgKGVycm9yICYmIHRydWUpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1maW5hbGx5XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5zYWZlLWZpbmFsbHlcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzUHJvbWlzZSh2YWwpIHtcbiAgcmV0dXJuIChcbiAgICAodHlwZW9mIHZhbCA9PT0gJ29iamVjdCcgJiYgdmFsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHZhbCwgJ3RoZW4nKT8udmFsdWUgPT09ICdmdW5jdGlvbicpIHx8XG4gICAgZmFsc2VcbiAgKTtcbn1cblxuZXhwb3J0cy5lbmRTcGFuID0gZW5kU3BhbjtcbmV4cG9ydHMuc2FmZUV4ZWN1dGVJblRoZU1pZGRsZU1heWJlUHJvbWlzZSA9IHNhZmVFeGVjdXRlSW5UaGVNaWRkbGVNYXliZVByb21pc2U7XG5leHBvcnRzLnN0YXJ0U3BhbiA9IHN0YXJ0U3Bhbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWxzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/v3/utils.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js":
/*!*******************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js ***!
\*******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst firebaseInstrumentation = __webpack_require__(/*! ./otel/firebaseInstrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js\");\n\nconst INTEGRATION_NAME = 'Firebase';\n\nconst config = {\n firestoreSpanCreationHook: span => {\n nodeCore.addOriginToSpan(span, 'auto.firebase.otel.firestore');\n\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, 'db.query');\n },\n functions: {\n requestHook: span => {\n nodeCore.addOriginToSpan(span, 'auto.firebase.otel.functions');\n\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, 'http.request');\n },\n errorHook: async (_, error) => {\n if (error) {\n core.captureException(error, {\n mechanism: {\n type: 'auto.firebase.otel.functions',\n handled: false,\n },\n });\n await core.flush(2000);\n }\n },\n },\n};\n\nconst instrumentFirebase = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new firebaseInstrumentation.FirebaseInstrumentation(config));\n\nconst _firebaseIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentFirebase();\n },\n };\n}) ;\n\nconst firebaseIntegration = core.defineIntegration(_firebaseIntegration);\n\nexports.firebaseIntegration = firebaseIntegration;\nexports.instrumentFirebase = instrumentFirebase;\n//# sourceMappingURL=firebase.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2UvZmlyZWJhc2UuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxnQ0FBZ0MsbUJBQU8sQ0FBQyw0TEFBbUM7O0FBRTNFOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYLFNBQVM7QUFDVDtBQUNBO0FBQ0EsS0FBSztBQUNMLEdBQUc7QUFDSDs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDs7QUFFQSwyQkFBMkI7QUFDM0IsMEJBQTBCO0FBQzFCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2ZpcmViYXNlL2ZpcmViYXNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBmaXJlYmFzZUluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vb3RlbC9maXJlYmFzZUluc3RydW1lbnRhdGlvbi5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0ZpcmViYXNlJztcblxuY29uc3QgY29uZmlnID0ge1xuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rOiBzcGFuID0+IHtcbiAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uZmlyZWJhc2Uub3RlbC5maXJlc3RvcmUnKTtcblxuICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgJ2RiLnF1ZXJ5Jyk7XG4gIH0sXG4gIGZ1bmN0aW9uczoge1xuICAgIHJlcXVlc3RIb29rOiBzcGFuID0+IHtcbiAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5maXJlYmFzZS5vdGVsLmZ1bmN0aW9ucycpO1xuXG4gICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1AsICdodHRwLnJlcXVlc3QnKTtcbiAgICB9LFxuICAgIGVycm9ySG9vazogYXN5bmMgKF8sIGVycm9yKSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGVycm9yLCB7XG4gICAgICAgICAgbWVjaGFuaXNtOiB7XG4gICAgICAgICAgICB0eXBlOiAnYXV0by5maXJlYmFzZS5vdGVsLmZ1bmN0aW9ucycsXG4gICAgICAgICAgICBoYW5kbGVkOiBmYWxzZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgYXdhaXQgY29yZS5mbHVzaCgyMDAwKTtcbiAgICAgIH1cbiAgICB9LFxuICB9LFxufTtcblxuY29uc3QgaW5zdHJ1bWVudEZpcmViYXNlID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShJTlRFR1JBVElPTl9OQU1FLCAoKSA9PiBuZXcgZmlyZWJhc2VJbnN0cnVtZW50YXRpb24uRmlyZWJhc2VJbnN0cnVtZW50YXRpb24oY29uZmlnKSk7XG5cbmNvbnN0IF9maXJlYmFzZUludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRGaXJlYmFzZSgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbmNvbnN0IGZpcmViYXNlSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9maXJlYmFzZUludGVncmF0aW9uKTtcblxuZXhwb3J0cy5maXJlYmFzZUludGVncmF0aW9uID0gZmlyZWJhc2VJbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEZpcmViYXNlID0gaW5zdHJ1bWVudEZpcmViYXNlO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZmlyZWJhc2UuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js":
/*!***************************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js ***!
\***************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst firestore = __webpack_require__(/*! ./patches/firestore.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js\");\nconst functions = __webpack_require__(/*! ./patches/functions.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js\");\n\nconst DefaultFirebaseInstrumentationConfig = {};\nconst firestoreSupportedVersions = ['>=3.0.0 <5']; // firebase 9+\nconst functionsSupportedVersions = ['>=6.0.0 <7']; // firebase-functions v2\n\n/**\n * Instrumentation for Firebase services, specifically Firestore.\n */\nclass FirebaseInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = DefaultFirebaseInstrumentationConfig) {\n super('@sentry/instrumentation-firebase', core.SDK_VERSION, config);\n }\n\n /**\n * sets config\n * @param config\n */\n setConfig(config = {}) {\n super.setConfig({ ...DefaultFirebaseInstrumentationConfig, ...config });\n }\n\n /**\n *\n * @protected\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n init() {\n const modules = [];\n\n modules.push(firestore.patchFirestore(this.tracer, firestoreSupportedVersions, this._wrap, this._unwrap, this.getConfig()));\n modules.push(functions.patchFunctions(this.tracer, functionsSupportedVersions, this._wrap, this._unwrap, this.getConfig()));\n\n return modules;\n }\n}\n\nexports.FirebaseInstrumentation = FirebaseInstrumentation;\n//# sourceMappingURL=firebaseInstrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9maXJlYmFzZUluc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSx3QkFBd0IsbUJBQU8sQ0FBQyxpTUFBZ0M7QUFDaEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGtCQUFrQixtQkFBTyxDQUFDLDJLQUF3QjtBQUNsRCxrQkFBa0IsbUJBQU8sQ0FBQywyS0FBd0I7O0FBRWxEO0FBQ0EsbURBQW1EO0FBQ25ELG1EQUFtRDs7QUFFbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUI7QUFDekIsc0JBQXNCLG9EQUFvRDtBQUMxRTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSwrQkFBK0I7QUFDL0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9maXJlYmFzZUluc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBmaXJlc3RvcmUgPSByZXF1aXJlKCcuL3BhdGNoZXMvZmlyZXN0b3JlLmpzJyk7XG5jb25zdCBmdW5jdGlvbnMgPSByZXF1aXJlKCcuL3BhdGNoZXMvZnVuY3Rpb25zLmpzJyk7XG5cbmNvbnN0IERlZmF1bHRGaXJlYmFzZUluc3RydW1lbnRhdGlvbkNvbmZpZyA9IHt9O1xuY29uc3QgZmlyZXN0b3JlU3VwcG9ydGVkVmVyc2lvbnMgPSBbJz49My4wLjAgPDUnXTsgLy8gZmlyZWJhc2UgOStcbmNvbnN0IGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zID0gWyc+PTYuMC4wIDw3J107IC8vIGZpcmViYXNlLWZ1bmN0aW9ucyB2MlxuXG4vKipcbiAqIEluc3RydW1lbnRhdGlvbiBmb3IgRmlyZWJhc2Ugc2VydmljZXMsIHNwZWNpZmljYWxseSBGaXJlc3RvcmUuXG4gKi9cbmNsYXNzIEZpcmViYXNlSW5zdHJ1bWVudGF0aW9uIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0gRGVmYXVsdEZpcmViYXNlSW5zdHJ1bWVudGF0aW9uQ29uZmlnKSB7XG4gICAgc3VwZXIoJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWZpcmViYXNlJywgY29yZS5TREtfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBzZXRzIGNvbmZpZ1xuICAgKiBAcGFyYW0gY29uZmlnXG4gICAqL1xuICAgIHNldENvbmZpZyhjb25maWcgPSB7fSkge1xuICAgIHN1cGVyLnNldENvbmZpZyh7IC4uLkRlZmF1bHRGaXJlYmFzZUluc3RydW1lbnRhdGlvbkNvbmZpZywgLi4uY29uZmlnIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwcm90ZWN0ZWRcbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgIGluaXQoKSB7XG4gICAgY29uc3QgbW9kdWxlcyA9IFtdO1xuXG4gICAgbW9kdWxlcy5wdXNoKGZpcmVzdG9yZS5wYXRjaEZpcmVzdG9yZSh0aGlzLnRyYWNlciwgZmlyZXN0b3JlU3VwcG9ydGVkVmVyc2lvbnMsIHRoaXMuX3dyYXAsIHRoaXMuX3Vud3JhcCwgdGhpcy5nZXRDb25maWcoKSkpO1xuICAgIG1vZHVsZXMucHVzaChmdW5jdGlvbnMucGF0Y2hGdW5jdGlvbnModGhpcy50cmFjZXIsIGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zLCB0aGlzLl93cmFwLCB0aGlzLl91bndyYXAsIHRoaXMuZ2V0Q29uZmlnKCkpKTtcblxuICAgIHJldHVybiBtb2R1bGVzO1xuICB9XG59XG5cbmV4cG9ydHMuRmlyZWJhc2VJbnN0cnVtZW50YXRpb24gPSBGaXJlYmFzZUluc3RydW1lbnRhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWZpcmViYXNlSW5zdHJ1bWVudGF0aW9uLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/firebaseInstrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js ***!
\*********************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst net = __webpack_require__(/*! node:net */ \"node:net\");\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\n\n// Inline minimal types used from `shimmer` to avoid importing shimmer's types directly.\n// We only need the shape for `wrap` and `unwrap` used in this file.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n/**\n *\n * @param tracer - Opentelemetry Tracer\n * @param firestoreSupportedVersions - supported version of firebase/firestore\n * @param wrap - reference to native instrumentation wrap function\n * @param unwrap - reference to native instrumentation wrap function\n */\nfunction patchFirestore(\n tracer,\n firestoreSupportedVersions,\n wrap,\n unwrap,\n config,\n) {\n const defaultFirestoreSpanCreationHook = () => {};\n\n let firestoreSpanCreationHook = defaultFirestoreSpanCreationHook;\n const configFirestoreSpanCreationHook = config.firestoreSpanCreationHook;\n\n if (typeof configFirestoreSpanCreationHook === 'function') {\n firestoreSpanCreationHook = (span) => {\n instrumentation.safeExecuteInTheMiddle(\n () => configFirestoreSpanCreationHook(span),\n error => {\n if (!error) {\n return;\n }\n api.diag.error(error?.message);\n },\n true,\n );\n };\n }\n\n const moduleFirestoreCJS = new instrumentation.InstrumentationNodeModuleDefinition(\n '@firebase/firestore',\n firestoreSupportedVersions,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (moduleExports) => wrapMethods(moduleExports, wrap, unwrap, tracer, firestoreSpanCreationHook),\n );\n const files = [\n '@firebase/firestore/dist/lite/index.node.cjs.js',\n '@firebase/firestore/dist/lite/index.node.mjs.js',\n '@firebase/firestore/dist/lite/index.rn.esm2017.js',\n '@firebase/firestore/dist/lite/index.cjs.js',\n ];\n\n for (const file of files) {\n moduleFirestoreCJS.files.push(\n new instrumentation.InstrumentationNodeModuleFile(\n file,\n firestoreSupportedVersions,\n moduleExports => wrapMethods(moduleExports, wrap, unwrap, tracer, firestoreSpanCreationHook),\n moduleExports => unwrapMethods(moduleExports, unwrap),\n ),\n );\n }\n\n return moduleFirestoreCJS;\n}\n\nfunction wrapMethods(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n moduleExports,\n wrap,\n unwrap,\n tracer,\n firestoreSpanCreationHook,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n) {\n unwrapMethods(moduleExports, unwrap);\n\n wrap(moduleExports, 'addDoc', patchAddDoc(tracer, firestoreSpanCreationHook));\n wrap(moduleExports, 'getDocs', patchGetDocs(tracer, firestoreSpanCreationHook));\n wrap(moduleExports, 'setDoc', patchSetDoc(tracer, firestoreSpanCreationHook));\n wrap(moduleExports, 'deleteDoc', patchDeleteDoc(tracer, firestoreSpanCreationHook));\n\n return moduleExports;\n}\n\nfunction unwrapMethods(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n moduleExports,\n unwrap,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n) {\n for (const method of ['addDoc', 'getDocs', 'setDoc', 'deleteDoc']) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (instrumentation.isWrapped(moduleExports[method])) {\n unwrap(moduleExports, method);\n }\n }\n return moduleExports;\n}\n\nfunction patchAddDoc(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function addDoc(original) {\n return function (\n reference,\n data,\n ) {\n const span = startDBSpan(tracer, 'addDoc', reference);\n firestoreSpanCreationHook(span);\n return executeContextWithSpan(span, () => {\n return original(reference, data);\n });\n };\n };\n}\n\nfunction patchDeleteDoc(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function deleteDoc(original) {\n return function (reference) {\n const span = startDBSpan(tracer, 'deleteDoc', reference.parent || reference);\n firestoreSpanCreationHook(span);\n return executeContextWithSpan(span, () => {\n return original(reference);\n });\n };\n };\n}\n\nfunction patchGetDocs(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function getDocs(original) {\n return function (\n reference,\n ) {\n const span = startDBSpan(tracer, 'getDocs', reference);\n firestoreSpanCreationHook(span);\n return executeContextWithSpan(span, () => {\n return original(reference);\n });\n };\n };\n}\n\nfunction patchSetDoc(\n tracer,\n firestoreSpanCreationHook,\n)\n\n {\n return function setDoc(original) {\n return function (\n reference,\n data,\n options,\n ) {\n const span = startDBSpan(tracer, 'setDoc', reference.parent || reference);\n firestoreSpanCreationHook(span);\n\n return executeContextWithSpan(span, () => {\n return typeof options !== 'undefined' ? original(reference, data, options) : original(reference, data);\n });\n };\n };\n}\n\nfunction executeContextWithSpan(span, callback) {\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n return instrumentation.safeExecuteInTheMiddle(\n () => {\n return callback();\n },\n err => {\n if (err) {\n span.recordException(err);\n }\n span.end();\n },\n true,\n );\n });\n}\n\nfunction startDBSpan(\n tracer,\n spanName,\n reference,\n) {\n const span = tracer.startSpan(`${spanName} ${reference.path}`, { kind: api.SpanKind.CLIENT });\n addAttributes(span, reference);\n span.setAttribute(semanticConventions.ATTR_DB_OPERATION_NAME, spanName);\n return span;\n}\n\n/**\n * Gets the server address and port attributes from the Firestore settings.\n * It's best effort to extract the address and port from the settings, especially for IPv6.\n * @param span - The span to set attributes on.\n * @param settings - The Firestore settings containing host information.\n */\nfunction getPortAndAddress(settings)\n\n {\n let address;\n let port;\n\n if (typeof settings.host === 'string') {\n if (settings.host.startsWith('[')) {\n // IPv6 addresses can be enclosed in square brackets, e.g., [2001:db8::1]:8080\n if (settings.host.endsWith(']')) {\n // IPv6 with square brackets without port\n address = settings.host.replace(/^\\[|\\]$/g, '');\n } else if (settings.host.includes(']:')) {\n // IPv6 with square brackets with port\n const lastColonIndex = settings.host.lastIndexOf(':');\n if (lastColonIndex !== -1) {\n address = settings.host.slice(1, lastColonIndex).replace(/^\\[|\\]$/g, '');\n port = settings.host.slice(lastColonIndex + 1);\n }\n }\n } else {\n // IPv4 or IPv6 without square brackets\n // If it's an IPv6 address without square brackets, we assume it does not have a port.\n if (net.isIPv6(settings.host)) {\n address = settings.host;\n }\n // If it's an IPv4 address, we can extract the port if it exists.\n else {\n const lastColonIndex = settings.host.lastIndexOf(':');\n if (lastColonIndex !== -1) {\n address = settings.host.slice(0, lastColonIndex);\n port = settings.host.slice(lastColonIndex + 1);\n } else {\n address = settings.host;\n }\n }\n }\n }\n return {\n address: address,\n port: port ? parseInt(port, 10) : undefined,\n };\n}\n\nfunction addAttributes(\n span,\n reference,\n) {\n const firestoreApp = reference.firestore.app;\n const firestoreOptions = firestoreApp.options;\n const json = reference.firestore.toJSON() || {};\n const settings = json.settings || {};\n\n const attributes = {\n [semanticConventions.ATTR_DB_COLLECTION_NAME]: reference.path,\n [semanticConventions.ATTR_DB_NAMESPACE]: firestoreApp.name,\n [semanticConventions.ATTR_DB_SYSTEM_NAME]: 'firebase.firestore',\n 'firebase.firestore.type': reference.type,\n 'firebase.firestore.options.projectId': firestoreOptions.projectId,\n 'firebase.firestore.options.appId': firestoreOptions.appId,\n 'firebase.firestore.options.messagingSenderId': firestoreOptions.messagingSenderId,\n 'firebase.firestore.options.storageBucket': firestoreOptions.storageBucket,\n };\n\n const { address, port } = getPortAndAddress(settings);\n\n if (address) {\n attributes[semanticConventions.ATTR_SERVER_ADDRESS] = address;\n }\n if (port) {\n attributes[semanticConventions.ATTR_SERVER_PORT] = port;\n }\n\n span.setAttributes(attributes);\n}\n\nexports.getPortAndAddress = getPortAndAddress;\nexports.patchFirestore = patchFirestore;\n//# sourceMappingURL=firestore.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9wYXRjaGVzL2ZpcmVzdG9yZS5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsMEJBQVU7QUFDOUIsWUFBWSxtQkFBTyxDQUFDLGtJQUFvQjtBQUN4Qyx3QkFBd0IsbUJBQU8sQ0FBQyxpTUFBZ0M7QUFDaEUsNEJBQTRCLG1CQUFPLENBQUMsc0xBQXFDOztBQUV6RTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsVUFBVSxFQUFFLGVBQWUsS0FBSywyQkFBMkI7QUFDOUY7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsVUFBVSxnQkFBZ0I7O0FBRTFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBLHlCQUF5QjtBQUN6QixzQkFBc0I7QUFDdEIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9wYXRjaGVzL2ZpcmVzdG9yZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgbmV0ID0gcmVxdWlyZSgnbm9kZTpuZXQnKTtcbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uJyk7XG5jb25zdCBzZW1hbnRpY0NvbnZlbnRpb25zID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvc2VtYW50aWMtY29udmVudGlvbnMnKTtcblxuLy8gSW5saW5lIG1pbmltYWwgdHlwZXMgdXNlZCBmcm9tIGBzaGltbWVyYCB0byBhdm9pZCBpbXBvcnRpbmcgc2hpbW1lcidzIHR5cGVzIGRpcmVjdGx5LlxuLy8gV2Ugb25seSBuZWVkIHRoZSBzaGFwZSBmb3IgYHdyYXBgIGFuZCBgdW53cmFwYCB1c2VkIGluIHRoaXMgZmlsZS5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5cbi8qKlxuICpcbiAqIEBwYXJhbSB0cmFjZXIgLSBPcGVudGVsZW1ldHJ5IFRyYWNlclxuICogQHBhcmFtIGZpcmVzdG9yZVN1cHBvcnRlZFZlcnNpb25zIC0gc3VwcG9ydGVkIHZlcnNpb24gb2YgZmlyZWJhc2UvZmlyZXN0b3JlXG4gKiBAcGFyYW0gd3JhcCAtIHJlZmVyZW5jZSB0byBuYXRpdmUgaW5zdHJ1bWVudGF0aW9uIHdyYXAgZnVuY3Rpb25cbiAqIEBwYXJhbSB1bndyYXAgLSByZWZlcmVuY2UgdG8gbmF0aXZlIGluc3RydW1lbnRhdGlvbiB3cmFwIGZ1bmN0aW9uXG4gKi9cbmZ1bmN0aW9uIHBhdGNoRmlyZXN0b3JlKFxuICB0cmFjZXIsXG4gIGZpcmVzdG9yZVN1cHBvcnRlZFZlcnNpb25zLFxuICB3cmFwLFxuICB1bndyYXAsXG4gIGNvbmZpZyxcbikge1xuICBjb25zdCBkZWZhdWx0RmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayA9ICgpID0+IHt9O1xuXG4gIGxldCBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rID0gZGVmYXVsdEZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2s7XG4gIGNvbnN0IGNvbmZpZ0ZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2sgPSBjb25maWcuZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vaztcblxuICBpZiAodHlwZW9mIGNvbmZpZ0ZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rID0gKHNwYW4pID0+IHtcbiAgICAgIGluc3RydW1lbnRhdGlvbi5zYWZlRXhlY3V0ZUluVGhlTWlkZGxlKFxuICAgICAgICAoKSA9PiBjb25maWdGaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rKHNwYW4pLFxuICAgICAgICBlcnJvciA9PiB7XG4gICAgICAgICAgaWYgKCFlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhcGkuZGlhZy5lcnJvcihlcnJvcj8ubWVzc2FnZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHRydWUsXG4gICAgICApO1xuICAgIH07XG4gIH1cblxuICBjb25zdCBtb2R1bGVGaXJlc3RvcmVDSlMgPSBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKFxuICAgICdAZmlyZWJhc2UvZmlyZXN0b3JlJyxcbiAgICBmaXJlc3RvcmVTdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIChtb2R1bGVFeHBvcnRzKSA9PiB3cmFwTWV0aG9kcyhtb2R1bGVFeHBvcnRzLCB3cmFwLCB1bndyYXAsIHRyYWNlciwgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayksXG4gICk7XG4gIGNvbnN0IGZpbGVzID0gW1xuICAgICdAZmlyZWJhc2UvZmlyZXN0b3JlL2Rpc3QvbGl0ZS9pbmRleC5ub2RlLmNqcy5qcycsXG4gICAgJ0BmaXJlYmFzZS9maXJlc3RvcmUvZGlzdC9saXRlL2luZGV4Lm5vZGUubWpzLmpzJyxcbiAgICAnQGZpcmViYXNlL2ZpcmVzdG9yZS9kaXN0L2xpdGUvaW5kZXgucm4uZXNtMjAxNy5qcycsXG4gICAgJ0BmaXJlYmFzZS9maXJlc3RvcmUvZGlzdC9saXRlL2luZGV4LmNqcy5qcycsXG4gIF07XG5cbiAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG4gICAgbW9kdWxlRmlyZXN0b3JlQ0pTLmZpbGVzLnB1c2goXG4gICAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVGaWxlKFxuICAgICAgICBmaWxlLFxuICAgICAgICBmaXJlc3RvcmVTdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAgICAgbW9kdWxlRXhwb3J0cyA9PiB3cmFwTWV0aG9kcyhtb2R1bGVFeHBvcnRzLCB3cmFwLCB1bndyYXAsIHRyYWNlciwgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayksXG4gICAgICAgIG1vZHVsZUV4cG9ydHMgPT4gdW53cmFwTWV0aG9kcyhtb2R1bGVFeHBvcnRzLCB1bndyYXApLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIG1vZHVsZUZpcmVzdG9yZUNKUztcbn1cblxuZnVuY3Rpb24gd3JhcE1ldGhvZHMoXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIG1vZHVsZUV4cG9ydHMsXG4gIHdyYXAsXG4gIHVud3JhcCxcbiAgdHJhY2VyLFxuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuKSB7XG4gIHVud3JhcE1ldGhvZHMobW9kdWxlRXhwb3J0cywgdW53cmFwKTtcblxuICB3cmFwKG1vZHVsZUV4cG9ydHMsICdhZGREb2MnLCBwYXRjaEFkZERvYyh0cmFjZXIsIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2spKTtcbiAgd3JhcChtb2R1bGVFeHBvcnRzLCAnZ2V0RG9jcycsIHBhdGNoR2V0RG9jcyh0cmFjZXIsIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2spKTtcbiAgd3JhcChtb2R1bGVFeHBvcnRzLCAnc2V0RG9jJywgcGF0Y2hTZXREb2ModHJhY2VyLCBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rKSk7XG4gIHdyYXAobW9kdWxlRXhwb3J0cywgJ2RlbGV0ZURvYycsIHBhdGNoRGVsZXRlRG9jKHRyYWNlciwgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vaykpO1xuXG4gIHJldHVybiBtb2R1bGVFeHBvcnRzO1xufVxuXG5mdW5jdGlvbiB1bndyYXBNZXRob2RzKFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICBtb2R1bGVFeHBvcnRzLFxuICB1bndyYXAsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4pIHtcbiAgZm9yIChjb25zdCBtZXRob2Qgb2YgWydhZGREb2MnLCAnZ2V0RG9jcycsICdzZXREb2MnLCAnZGVsZXRlRG9jJ10pIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1tZW1iZXItYWNjZXNzXG4gICAgaWYgKGluc3RydW1lbnRhdGlvbi5pc1dyYXBwZWQobW9kdWxlRXhwb3J0c1ttZXRob2RdKSkge1xuICAgICAgdW53cmFwKG1vZHVsZUV4cG9ydHMsIG1ldGhvZCk7XG4gICAgfVxuICB9XG4gIHJldHVybiBtb2R1bGVFeHBvcnRzO1xufVxuXG5mdW5jdGlvbiBwYXRjaEFkZERvYyhcbiAgdHJhY2VyLFxuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rLFxuKVxuXG4ge1xuICByZXR1cm4gZnVuY3Rpb24gYWRkRG9jKG9yaWdpbmFsKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChcbiAgICAgIHJlZmVyZW5jZSxcbiAgICAgIGRhdGEsXG4gICAgKSB7XG4gICAgICBjb25zdCBzcGFuID0gc3RhcnREQlNwYW4odHJhY2VyLCAnYWRkRG9jJywgcmVmZXJlbmNlKTtcbiAgICAgIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2soc3Bhbik7XG4gICAgICByZXR1cm4gZXhlY3V0ZUNvbnRleHRXaXRoU3BhbihzcGFuLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiBvcmlnaW5hbChyZWZlcmVuY2UsIGRhdGEpO1xuICAgICAgfSk7XG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gcGF0Y2hEZWxldGVEb2MoXG4gIHRyYWNlcixcbiAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayxcbilcblxuIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGRlbGV0ZURvYyhvcmlnaW5hbCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAocmVmZXJlbmNlKSB7XG4gICAgICBjb25zdCBzcGFuID0gc3RhcnREQlNwYW4odHJhY2VyLCAnZGVsZXRlRG9jJywgcmVmZXJlbmNlLnBhcmVudCB8fCByZWZlcmVuY2UpO1xuICAgICAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayhzcGFuKTtcbiAgICAgIHJldHVybiBleGVjdXRlQ29udGV4dFdpdGhTcGFuKHNwYW4sICgpID0+IHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsKHJlZmVyZW5jZSk7XG4gICAgICB9KTtcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBwYXRjaEdldERvY3MoXG4gIHRyYWNlcixcbiAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayxcbilcblxuIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGdldERvY3Mob3JpZ2luYWwpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gKFxuICAgICAgcmVmZXJlbmNlLFxuICAgICkge1xuICAgICAgY29uc3Qgc3BhbiA9IHN0YXJ0REJTcGFuKHRyYWNlciwgJ2dldERvY3MnLCByZWZlcmVuY2UpO1xuICAgICAgZmlyZXN0b3JlU3BhbkNyZWF0aW9uSG9vayhzcGFuKTtcbiAgICAgIHJldHVybiBleGVjdXRlQ29udGV4dFdpdGhTcGFuKHNwYW4sICgpID0+IHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsKHJlZmVyZW5jZSk7XG4gICAgICB9KTtcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBwYXRjaFNldERvYyhcbiAgdHJhY2VyLFxuICBmaXJlc3RvcmVTcGFuQ3JlYXRpb25Ib29rLFxuKVxuXG4ge1xuICByZXR1cm4gZnVuY3Rpb24gc2V0RG9jKG9yaWdpbmFsKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChcbiAgICAgIHJlZmVyZW5jZSxcbiAgICAgIGRhdGEsXG4gICAgICBvcHRpb25zLFxuICAgICkge1xuICAgICAgY29uc3Qgc3BhbiA9IHN0YXJ0REJTcGFuKHRyYWNlciwgJ3NldERvYycsIHJlZmVyZW5jZS5wYXJlbnQgfHwgcmVmZXJlbmNlKTtcbiAgICAgIGZpcmVzdG9yZVNwYW5DcmVhdGlvbkhvb2soc3Bhbik7XG5cbiAgICAgIHJldHVybiBleGVjdXRlQ29udGV4dFdpdGhTcGFuKHNwYW4sICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBvcHRpb25zICE9PSAndW5kZWZpbmVkJyA/IG9yaWdpbmFsKHJlZmVyZW5jZSwgZGF0YSwgb3B0aW9ucykgOiBvcmlnaW5hbChyZWZlcmVuY2UsIGRhdGEpO1xuICAgICAgfSk7XG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZXhlY3V0ZUNvbnRleHRXaXRoU3BhbihzcGFuLCBjYWxsYmFjaykge1xuICByZXR1cm4gYXBpLmNvbnRleHQud2l0aChhcGkudHJhY2Uuc2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSwgc3BhbiksICgpID0+IHtcbiAgICByZXR1cm4gaW5zdHJ1bWVudGF0aW9uLnNhZmVFeGVjdXRlSW5UaGVNaWRkbGUoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHJldHVybiBjYWxsYmFjaygpO1xuICAgICAgfSxcbiAgICAgIGVyciA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICBzcGFuLnJlY29yZEV4Y2VwdGlvbihlcnIpO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICB9LFxuICAgICAgdHJ1ZSxcbiAgICApO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gc3RhcnREQlNwYW4oXG4gIHRyYWNlcixcbiAgc3Bhbk5hbWUsXG4gIHJlZmVyZW5jZSxcbikge1xuICBjb25zdCBzcGFuID0gdHJhY2VyLnN0YXJ0U3BhbihgJHtzcGFuTmFtZX0gJHtyZWZlcmVuY2UucGF0aH1gLCB7IGtpbmQ6IGFwaS5TcGFuS2luZC5DTElFTlQgfSk7XG4gIGFkZEF0dHJpYnV0ZXMoc3BhbiwgcmVmZXJlbmNlKTtcbiAgc3Bhbi5zZXRBdHRyaWJ1dGUoc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX09QRVJBVElPTl9OQU1FLCBzcGFuTmFtZSk7XG4gIHJldHVybiBzcGFuO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIHNlcnZlciBhZGRyZXNzIGFuZCBwb3J0IGF0dHJpYnV0ZXMgZnJvbSB0aGUgRmlyZXN0b3JlIHNldHRpbmdzLlxuICogSXQncyBiZXN0IGVmZm9ydCB0byBleHRyYWN0IHRoZSBhZGRyZXNzIGFuZCBwb3J0IGZyb20gdGhlIHNldHRpbmdzLCBlc3BlY2lhbGx5IGZvciBJUHY2LlxuICogQHBhcmFtIHNwYW4gLSBUaGUgc3BhbiB0byBzZXQgYXR0cmlidXRlcyBvbi5cbiAqIEBwYXJhbSBzZXR0aW5ncyAtIFRoZSBGaXJlc3RvcmUgc2V0dGluZ3MgY29udGFpbmluZyBob3N0IGluZm9ybWF0aW9uLlxuICovXG5mdW5jdGlvbiBnZXRQb3J0QW5kQWRkcmVzcyhzZXR0aW5ncylcblxuIHtcbiAgbGV0IGFkZHJlc3M7XG4gIGxldCBwb3J0O1xuXG4gIGlmICh0eXBlb2Ygc2V0dGluZ3MuaG9zdCA9PT0gJ3N0cmluZycpIHtcbiAgICBpZiAoc2V0dGluZ3MuaG9zdC5zdGFydHNXaXRoKCdbJykpIHtcbiAgICAgIC8vIElQdjYgYWRkcmVzc2VzIGNhbiBiZSBlbmNsb3NlZCBpbiBzcXVhcmUgYnJhY2tldHMsIGUuZy4sIFsyMDAxOmRiODo6MV06ODA4MFxuICAgICAgaWYgKHNldHRpbmdzLmhvc3QuZW5kc1dpdGgoJ10nKSkge1xuICAgICAgICAvLyBJUHY2IHdpdGggc3F1YXJlIGJyYWNrZXRzIHdpdGhvdXQgcG9ydFxuICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdC5yZXBsYWNlKC9eXFxbfFxcXSQvZywgJycpO1xuICAgICAgfSBlbHNlIGlmIChzZXR0aW5ncy5ob3N0LmluY2x1ZGVzKCddOicpKSB7XG4gICAgICAgIC8vIElQdjYgd2l0aCBzcXVhcmUgYnJhY2tldHMgd2l0aCBwb3J0XG4gICAgICAgIGNvbnN0IGxhc3RDb2xvbkluZGV4ID0gc2V0dGluZ3MuaG9zdC5sYXN0SW5kZXhPZignOicpO1xuICAgICAgICBpZiAobGFzdENvbG9uSW5kZXggIT09IC0xKSB7XG4gICAgICAgICAgYWRkcmVzcyA9IHNldHRpbmdzLmhvc3Quc2xpY2UoMSwgbGFzdENvbG9uSW5kZXgpLnJlcGxhY2UoL15cXFt8XFxdJC9nLCAnJyk7XG4gICAgICAgICAgcG9ydCA9IHNldHRpbmdzLmhvc3Quc2xpY2UobGFzdENvbG9uSW5kZXggKyAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBJUHY0IG9yIElQdjYgd2l0aG91dCBzcXVhcmUgYnJhY2tldHNcbiAgICAgIC8vIElmIGl0J3MgYW4gSVB2NiBhZGRyZXNzIHdpdGhvdXQgc3F1YXJlIGJyYWNrZXRzLCB3ZSBhc3N1bWUgaXQgZG9lcyBub3QgaGF2ZSBhIHBvcnQuXG4gICAgICBpZiAobmV0LmlzSVB2NihzZXR0aW5ncy5ob3N0KSkge1xuICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdDtcbiAgICAgIH1cbiAgICAgIC8vIElmIGl0J3MgYW4gSVB2NCBhZGRyZXNzLCB3ZSBjYW4gZXh0cmFjdCB0aGUgcG9ydCBpZiBpdCBleGlzdHMuXG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgbGFzdENvbG9uSW5kZXggPSBzZXR0aW5ncy5ob3N0Lmxhc3RJbmRleE9mKCc6Jyk7XG4gICAgICAgIGlmIChsYXN0Q29sb25JbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdC5zbGljZSgwLCBsYXN0Q29sb25JbmRleCk7XG4gICAgICAgICAgcG9ydCA9IHNldHRpbmdzLmhvc3Quc2xpY2UobGFzdENvbG9uSW5kZXggKyAxKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhZGRyZXNzID0gc2V0dGluZ3MuaG9zdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4ge1xuICAgIGFkZHJlc3M6IGFkZHJlc3MsXG4gICAgcG9ydDogcG9ydCA/IHBhcnNlSW50KHBvcnQsIDEwKSA6IHVuZGVmaW5lZCxcbiAgfTtcbn1cblxuZnVuY3Rpb24gYWRkQXR0cmlidXRlcyhcbiAgc3BhbixcbiAgcmVmZXJlbmNlLFxuKSB7XG4gIGNvbnN0IGZpcmVzdG9yZUFwcCA9IHJlZmVyZW5jZS5maXJlc3RvcmUuYXBwO1xuICBjb25zdCBmaXJlc3RvcmVPcHRpb25zID0gZmlyZXN0b3JlQXBwLm9wdGlvbnM7XG4gIGNvbnN0IGpzb24gPSByZWZlcmVuY2UuZmlyZXN0b3JlLnRvSlNPTigpIHx8IHt9O1xuICBjb25zdCBzZXR0aW5ncyA9IGpzb24uc2V0dGluZ3MgfHwge307XG5cbiAgY29uc3QgYXR0cmlidXRlcyA9IHtcbiAgICBbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX0NPTExFQ1RJT05fTkFNRV06IHJlZmVyZW5jZS5wYXRoLFxuICAgIFtzZW1hbnRpY0NvbnZlbnRpb25zLkFUVFJfREJfTkFNRVNQQUNFXTogZmlyZXN0b3JlQXBwLm5hbWUsXG4gICAgW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9TWVNURU1fTkFNRV06ICdmaXJlYmFzZS5maXJlc3RvcmUnLFxuICAgICdmaXJlYmFzZS5maXJlc3RvcmUudHlwZSc6IHJlZmVyZW5jZS50eXBlLFxuICAgICdmaXJlYmFzZS5maXJlc3RvcmUub3B0aW9ucy5wcm9qZWN0SWQnOiBmaXJlc3RvcmVPcHRpb25zLnByb2plY3RJZCxcbiAgICAnZmlyZWJhc2UuZmlyZXN0b3JlLm9wdGlvbnMuYXBwSWQnOiBmaXJlc3RvcmVPcHRpb25zLmFwcElkLFxuICAgICdmaXJlYmFzZS5maXJlc3RvcmUub3B0aW9ucy5tZXNzYWdpbmdTZW5kZXJJZCc6IGZpcmVzdG9yZU9wdGlvbnMubWVzc2FnaW5nU2VuZGVySWQsXG4gICAgJ2ZpcmViYXNlLmZpcmVzdG9yZS5vcHRpb25zLnN0b3JhZ2VCdWNrZXQnOiBmaXJlc3RvcmVPcHRpb25zLnN0b3JhZ2VCdWNrZXQsXG4gIH07XG5cbiAgY29uc3QgeyBhZGRyZXNzLCBwb3J0IH0gPSBnZXRQb3J0QW5kQWRkcmVzcyhzZXR0aW5ncyk7XG5cbiAgaWYgKGFkZHJlc3MpIHtcbiAgICBhdHRyaWJ1dGVzW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9TRVJWRVJfQUREUkVTU10gPSBhZGRyZXNzO1xuICB9XG4gIGlmIChwb3J0KSB7XG4gICAgYXR0cmlidXRlc1tzZW1hbnRpY0NvbnZlbnRpb25zLkFUVFJfU0VSVkVSX1BPUlRdID0gcG9ydDtcbiAgfVxuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyhhdHRyaWJ1dGVzKTtcbn1cblxuZXhwb3J0cy5nZXRQb3J0QW5kQWRkcmVzcyA9IGdldFBvcnRBbmRBZGRyZXNzO1xuZXhwb3J0cy5wYXRjaEZpcmVzdG9yZSA9IHBhdGNoRmlyZXN0b3JlO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZmlyZXN0b3JlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/firestore.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js":
/*!*********************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js ***!
\*********************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\n\n/**\n * Patches Firebase Functions v2 to add OpenTelemetry instrumentation\n * @param tracer - Opentelemetry Tracer\n * @param functionsSupportedVersions - supported versions of firebase-functions\n * @param wrap - reference to native instrumentation wrap function\n * @param unwrap - reference to native instrumentation unwrap function\n * @param config - Firebase instrumentation config\n */\nfunction patchFunctions(\n tracer,\n functionsSupportedVersions,\n wrap,\n unwrap,\n config,\n) {\n let requestHook = () => {};\n let responseHook = () => {};\n const errorHook = config.functions?.errorHook;\n const configRequestHook = config.functions?.requestHook;\n const configResponseHook = config.functions?.responseHook;\n\n if (typeof configResponseHook === 'function') {\n responseHook = (span, err) => {\n instrumentation.safeExecuteInTheMiddle(\n () => configResponseHook(span, err),\n error => {\n if (!error) {\n return;\n }\n api.diag.error(error?.message);\n },\n true,\n );\n };\n }\n if (typeof configRequestHook === 'function') {\n requestHook = (span) => {\n instrumentation.safeExecuteInTheMiddle(\n () => configRequestHook(span),\n error => {\n if (!error) {\n return;\n }\n api.diag.error(error?.message);\n },\n true,\n );\n };\n }\n\n const moduleFunctionsCJS = new instrumentation.InstrumentationNodeModuleDefinition('firebase-functions', functionsSupportedVersions);\n const modulesToInstrument = [\n { name: 'firebase-functions/lib/v2/providers/https.js', triggerType: 'function' },\n { name: 'firebase-functions/lib/v2/providers/firestore.js', triggerType: 'firestore' },\n { name: 'firebase-functions/lib/v2/providers/scheduler.js', triggerType: 'scheduler' },\n { name: 'firebase-functions/lib/v2/storage.js', triggerType: 'storage' },\n ] ;\n\n modulesToInstrument.forEach(({ name, triggerType }) => {\n moduleFunctionsCJS.files.push(\n new instrumentation.InstrumentationNodeModuleFile(\n name,\n functionsSupportedVersions,\n moduleExports =>\n wrapCommonFunctions(\n moduleExports,\n wrap,\n unwrap,\n tracer,\n { requestHook, responseHook, errorHook },\n triggerType,\n ),\n moduleExports => unwrapCommonFunctions(moduleExports, unwrap),\n ),\n );\n });\n\n return moduleFunctionsCJS;\n}\n\n/**\n * Patches Cloud Functions for Firebase (v2) to add OpenTelemetry instrumentation\n *\n * @param tracer - Opentelemetry Tracer\n * @param functionsConfig - Firebase instrumentation config\n * @param triggerType - Type of trigger\n * @returns A function that patches the function\n */\nfunction patchV2Functions(\n tracer,\n functionsConfig,\n triggerType,\n) {\n return function v2FunctionsWrapper(original) {\n return function ( ...args) {\n const handler = typeof args[0] === 'function' ? args[0] : args[1];\n const documentOrOptions = typeof args[0] === 'function' ? undefined : args[0];\n\n if (!handler) {\n return original.call(this, ...args);\n }\n\n const wrappedHandler = async function ( ...handlerArgs) {\n const functionName = process.env.FUNCTION_TARGET || process.env.K_SERVICE || 'unknown';\n const span = tracer.startSpan(`firebase.function.${triggerType}`, {\n kind: api.SpanKind.SERVER,\n });\n\n const attributes = {\n 'faas.name': functionName,\n 'faas.trigger': triggerType,\n 'faas.provider': 'firebase',\n };\n\n if (process.env.GCLOUD_PROJECT) {\n attributes['cloud.project_id'] = process.env.GCLOUD_PROJECT;\n }\n\n if (process.env.EVENTARC_CLOUD_EVENT_SOURCE) {\n attributes['cloud.event_source'] = process.env.EVENTARC_CLOUD_EVENT_SOURCE;\n }\n\n span.setAttributes(attributes);\n functionsConfig?.requestHook?.(span);\n\n // Can be changed to safeExecuteInTheMiddleAsync once following is merged and released\n // https://github.com/open-telemetry/opentelemetry-js/pull/6032\n return api.context.with(api.trace.setSpan(api.context.active(), span), async () => {\n let error;\n let result;\n\n try {\n result = await handler.apply(this, handlerArgs);\n } catch (e) {\n error = e ;\n }\n\n functionsConfig?.responseHook?.(span, error);\n\n if (error) {\n span.recordException(error);\n }\n\n span.end();\n\n if (error) {\n await functionsConfig?.errorHook?.(span, error);\n throw error;\n }\n\n return result;\n });\n };\n\n if (documentOrOptions) {\n return original.call(this, documentOrOptions, wrappedHandler);\n } else {\n return original.call(this, wrappedHandler);\n }\n };\n };\n}\n\nfunction wrapCommonFunctions(\n moduleExports,\n wrap,\n unwrap,\n tracer,\n functionsConfig,\n triggerType,\n) {\n unwrapCommonFunctions(moduleExports, unwrap);\n\n switch (triggerType) {\n case 'function':\n wrap(moduleExports, 'onRequest', patchV2Functions(tracer, functionsConfig, 'http.request'));\n wrap(moduleExports, 'onCall', patchV2Functions(tracer, functionsConfig, 'http.call'));\n break;\n\n case 'firestore':\n wrap(moduleExports, 'onDocumentCreated', patchV2Functions(tracer, functionsConfig, 'firestore.document.created'));\n wrap(moduleExports, 'onDocumentUpdated', patchV2Functions(tracer, functionsConfig, 'firestore.document.updated'));\n wrap(moduleExports, 'onDocumentDeleted', patchV2Functions(tracer, functionsConfig, 'firestore.document.deleted'));\n wrap(moduleExports, 'onDocumentWritten', patchV2Functions(tracer, functionsConfig, 'firestore.document.written'));\n wrap(\n moduleExports,\n 'onDocumentCreatedWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.created'),\n );\n wrap(\n moduleExports,\n 'onDocumentUpdatedWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.updated'),\n );\n\n wrap(\n moduleExports,\n 'onDocumentDeletedWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.deleted'),\n );\n\n wrap(\n moduleExports,\n 'onDocumentWrittenWithAuthContext',\n patchV2Functions(tracer, functionsConfig, 'firestore.document.written'),\n );\n break;\n\n case 'scheduler':\n wrap(moduleExports, 'onSchedule', patchV2Functions(tracer, functionsConfig, 'scheduler.scheduled'));\n break;\n\n case 'storage':\n wrap(moduleExports, 'onObjectFinalized', patchV2Functions(tracer, functionsConfig, 'storage.object.finalized'));\n wrap(moduleExports, 'onObjectArchived', patchV2Functions(tracer, functionsConfig, 'storage.object.archived'));\n wrap(moduleExports, 'onObjectDeleted', patchV2Functions(tracer, functionsConfig, 'storage.object.deleted'));\n wrap(\n moduleExports,\n 'onObjectMetadataUpdated',\n patchV2Functions(tracer, functionsConfig, 'storage.object.metadataUpdated'),\n );\n break;\n }\n\n return moduleExports;\n}\n\nfunction unwrapCommonFunctions(\n moduleExports,\n unwrap,\n) {\n const methods = [\n 'onSchedule',\n 'onRequest',\n 'onCall',\n 'onObjectFinalized',\n 'onObjectArchived',\n 'onObjectDeleted',\n 'onObjectMetadataUpdated',\n 'onDocumentCreated',\n 'onDocumentUpdated',\n 'onDocumentDeleted',\n 'onDocumentWritten',\n 'onDocumentCreatedWithAuthContext',\n 'onDocumentUpdatedWithAuthContext',\n 'onDocumentDeletedWithAuthContext',\n 'onDocumentWrittenWithAuthContext',\n ];\n\n for (const method of methods) {\n if (instrumentation.isWrapped(moduleExports[method])) {\n unwrap(moduleExports, method);\n }\n }\n return moduleExports;\n}\n\nexports.patchFunctions = patchFunctions;\nexports.patchV2Functions = patchV2Functions;\n//# sourceMappingURL=functions.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZmlyZWJhc2Uvb3RlbC9wYXRjaGVzL2Z1bmN0aW9ucy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQzs7QUFFaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU0sK0VBQStFO0FBQ3JGLE1BQU0sb0ZBQW9GO0FBQzFGLE1BQU0sb0ZBQW9GO0FBQzFGLE1BQU0sc0VBQXNFO0FBQzVFOztBQUVBLGlDQUFpQyxtQkFBbUI7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHNDQUFzQztBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSwyREFBMkQsWUFBWTtBQUN2RTtBQUNBLFNBQVM7O0FBRVQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsWUFBWTtBQUNaO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0JBQXNCO0FBQ3RCLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9maXJlYmFzZS9vdGVsL3BhdGNoZXMvZnVuY3Rpb25zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBhcGkgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9hcGknKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuXG4vKipcbiAqIFBhdGNoZXMgRmlyZWJhc2UgRnVuY3Rpb25zIHYyIHRvIGFkZCBPcGVuVGVsZW1ldHJ5IGluc3RydW1lbnRhdGlvblxuICogQHBhcmFtIHRyYWNlciAtIE9wZW50ZWxlbWV0cnkgVHJhY2VyXG4gKiBAcGFyYW0gZnVuY3Rpb25zU3VwcG9ydGVkVmVyc2lvbnMgLSBzdXBwb3J0ZWQgdmVyc2lvbnMgb2YgZmlyZWJhc2UtZnVuY3Rpb25zXG4gKiBAcGFyYW0gd3JhcCAtIHJlZmVyZW5jZSB0byBuYXRpdmUgaW5zdHJ1bWVudGF0aW9uIHdyYXAgZnVuY3Rpb25cbiAqIEBwYXJhbSB1bndyYXAgLSByZWZlcmVuY2UgdG8gbmF0aXZlIGluc3RydW1lbnRhdGlvbiB1bndyYXAgZnVuY3Rpb25cbiAqIEBwYXJhbSBjb25maWcgLSBGaXJlYmFzZSBpbnN0cnVtZW50YXRpb24gY29uZmlnXG4gKi9cbmZ1bmN0aW9uIHBhdGNoRnVuY3Rpb25zKFxuICB0cmFjZXIsXG4gIGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zLFxuICB3cmFwLFxuICB1bndyYXAsXG4gIGNvbmZpZyxcbikge1xuICBsZXQgcmVxdWVzdEhvb2sgPSAoKSA9PiB7fTtcbiAgbGV0IHJlc3BvbnNlSG9vayA9ICgpID0+IHt9O1xuICBjb25zdCBlcnJvckhvb2sgPSBjb25maWcuZnVuY3Rpb25zPy5lcnJvckhvb2s7XG4gIGNvbnN0IGNvbmZpZ1JlcXVlc3RIb29rID0gY29uZmlnLmZ1bmN0aW9ucz8ucmVxdWVzdEhvb2s7XG4gIGNvbnN0IGNvbmZpZ1Jlc3BvbnNlSG9vayA9IGNvbmZpZy5mdW5jdGlvbnM/LnJlc3BvbnNlSG9vaztcblxuICBpZiAodHlwZW9mIGNvbmZpZ1Jlc3BvbnNlSG9vayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJlc3BvbnNlSG9vayA9IChzcGFuLCBlcnIpID0+IHtcbiAgICAgIGluc3RydW1lbnRhdGlvbi5zYWZlRXhlY3V0ZUluVGhlTWlkZGxlKFxuICAgICAgICAoKSA9PiBjb25maWdSZXNwb25zZUhvb2soc3BhbiwgZXJyKSxcbiAgICAgICAgZXJyb3IgPT4ge1xuICAgICAgICAgIGlmICghZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgYXBpLmRpYWcuZXJyb3IoZXJyb3I/Lm1lc3NhZ2UpO1xuICAgICAgICB9LFxuICAgICAgICB0cnVlLFxuICAgICAgKTtcbiAgICB9O1xuICB9XG4gIGlmICh0eXBlb2YgY29uZmlnUmVxdWVzdEhvb2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXF1ZXN0SG9vayA9IChzcGFuKSA9PiB7XG4gICAgICBpbnN0cnVtZW50YXRpb24uc2FmZUV4ZWN1dGVJblRoZU1pZGRsZShcbiAgICAgICAgKCkgPT4gY29uZmlnUmVxdWVzdEhvb2soc3BhbiksXG4gICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICBpZiAoIWVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGFwaS5kaWFnLmVycm9yKGVycm9yPy5tZXNzYWdlKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHJ1ZSxcbiAgICAgICk7XG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IG1vZHVsZUZ1bmN0aW9uc0NKUyA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oJ2ZpcmViYXNlLWZ1bmN0aW9ucycsIGZ1bmN0aW9uc1N1cHBvcnRlZFZlcnNpb25zKTtcbiAgY29uc3QgbW9kdWxlc1RvSW5zdHJ1bWVudCA9IFtcbiAgICB7IG5hbWU6ICdmaXJlYmFzZS1mdW5jdGlvbnMvbGliL3YyL3Byb3ZpZGVycy9odHRwcy5qcycsIHRyaWdnZXJUeXBlOiAnZnVuY3Rpb24nIH0sXG4gICAgeyBuYW1lOiAnZmlyZWJhc2UtZnVuY3Rpb25zL2xpYi92Mi9wcm92aWRlcnMvZmlyZXN0b3JlLmpzJywgdHJpZ2dlclR5cGU6ICdmaXJlc3RvcmUnIH0sXG4gICAgeyBuYW1lOiAnZmlyZWJhc2UtZnVuY3Rpb25zL2xpYi92Mi9wcm92aWRlcnMvc2NoZWR1bGVyLmpzJywgdHJpZ2dlclR5cGU6ICdzY2hlZHVsZXInIH0sXG4gICAgeyBuYW1lOiAnZmlyZWJhc2UtZnVuY3Rpb25zL2xpYi92Mi9zdG9yYWdlLmpzJywgdHJpZ2dlclR5cGU6ICdzdG9yYWdlJyB9LFxuICBdIDtcblxuICBtb2R1bGVzVG9JbnN0cnVtZW50LmZvckVhY2goKHsgbmFtZSwgdHJpZ2dlclR5cGUgfSkgPT4ge1xuICAgIG1vZHVsZUZ1bmN0aW9uc0NKUy5maWxlcy5wdXNoKFxuICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRmlsZShcbiAgICAgICAgbmFtZSxcbiAgICAgICAgZnVuY3Rpb25zU3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgIG1vZHVsZUV4cG9ydHMgPT5cbiAgICAgICAgICB3cmFwQ29tbW9uRnVuY3Rpb25zKFxuICAgICAgICAgICAgbW9kdWxlRXhwb3J0cyxcbiAgICAgICAgICAgIHdyYXAsXG4gICAgICAgICAgICB1bndyYXAsXG4gICAgICAgICAgICB0cmFjZXIsXG4gICAgICAgICAgICB7IHJlcXVlc3RIb29rLCByZXNwb25zZUhvb2ssIGVycm9ySG9vayB9LFxuICAgICAgICAgICAgdHJpZ2dlclR5cGUsXG4gICAgICAgICAgKSxcbiAgICAgICAgbW9kdWxlRXhwb3J0cyA9PiB1bndyYXBDb21tb25GdW5jdGlvbnMobW9kdWxlRXhwb3J0cywgdW53cmFwKSxcbiAgICAgICksXG4gICAgKTtcbiAgfSk7XG5cbiAgcmV0dXJuIG1vZHVsZUZ1bmN0aW9uc0NKUztcbn1cblxuLyoqXG4gKiBQYXRjaGVzIENsb3VkIEZ1bmN0aW9ucyBmb3IgRmlyZWJhc2UgKHYyKSB0byBhZGQgT3BlblRlbGVtZXRyeSBpbnN0cnVtZW50YXRpb25cbiAqXG4gKiBAcGFyYW0gdHJhY2VyIC0gT3BlbnRlbGVtZXRyeSBUcmFjZXJcbiAqIEBwYXJhbSBmdW5jdGlvbnNDb25maWcgLSBGaXJlYmFzZSBpbnN0cnVtZW50YXRpb24gY29uZmlnXG4gKiBAcGFyYW0gdHJpZ2dlclR5cGUgLSBUeXBlIG9mIHRyaWdnZXJcbiAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCBwYXRjaGVzIHRoZSBmdW5jdGlvblxuICovXG5mdW5jdGlvbiBwYXRjaFYyRnVuY3Rpb25zKFxuICB0cmFjZXIsXG4gIGZ1bmN0aW9uc0NvbmZpZyxcbiAgdHJpZ2dlclR5cGUsXG4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHYyRnVuY3Rpb25zV3JhcHBlcihvcmlnaW5hbCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoIC4uLmFyZ3MpIHtcbiAgICAgIGNvbnN0IGhhbmRsZXIgPSB0eXBlb2YgYXJnc1swXSA9PT0gJ2Z1bmN0aW9uJyA/IGFyZ3NbMF0gOiBhcmdzWzFdO1xuICAgICAgY29uc3QgZG9jdW1lbnRPck9wdGlvbnMgPSB0eXBlb2YgYXJnc1swXSA9PT0gJ2Z1bmN0aW9uJyA/IHVuZGVmaW5lZCA6IGFyZ3NbMF07XG5cbiAgICAgIGlmICghaGFuZGxlcikge1xuICAgICAgICByZXR1cm4gb3JpZ2luYWwuY2FsbCh0aGlzLCAuLi5hcmdzKTtcbiAgICAgIH1cblxuICAgICAgY29uc3Qgd3JhcHBlZEhhbmRsZXIgPSBhc3luYyBmdW5jdGlvbiAoIC4uLmhhbmRsZXJBcmdzKSB7XG4gICAgICAgIGNvbnN0IGZ1bmN0aW9uTmFtZSA9IHByb2Nlc3MuZW52LkZVTkNUSU9OX1RBUkdFVCB8fCBwcm9jZXNzLmVudi5LX1NFUlZJQ0UgfHwgJ3Vua25vd24nO1xuICAgICAgICBjb25zdCBzcGFuID0gdHJhY2VyLnN0YXJ0U3BhbihgZmlyZWJhc2UuZnVuY3Rpb24uJHt0cmlnZ2VyVHlwZX1gLCB7XG4gICAgICAgICAga2luZDogYXBpLlNwYW5LaW5kLlNFUlZFUixcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3QgYXR0cmlidXRlcyA9IHtcbiAgICAgICAgICAnZmFhcy5uYW1lJzogZnVuY3Rpb25OYW1lLFxuICAgICAgICAgICdmYWFzLnRyaWdnZXInOiB0cmlnZ2VyVHlwZSxcbiAgICAgICAgICAnZmFhcy5wcm92aWRlcic6ICdmaXJlYmFzZScsXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52LkdDTE9VRF9QUk9KRUNUKSB7XG4gICAgICAgICAgYXR0cmlidXRlc1snY2xvdWQucHJvamVjdF9pZCddID0gcHJvY2Vzcy5lbnYuR0NMT1VEX1BST0pFQ1Q7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuRVZFTlRBUkNfQ0xPVURfRVZFTlRfU09VUkNFKSB7XG4gICAgICAgICAgYXR0cmlidXRlc1snY2xvdWQuZXZlbnRfc291cmNlJ10gPSBwcm9jZXNzLmVudi5FVkVOVEFSQ19DTE9VRF9FVkVOVF9TT1VSQ0U7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZXMoYXR0cmlidXRlcyk7XG4gICAgICAgIGZ1bmN0aW9uc0NvbmZpZz8ucmVxdWVzdEhvb2s/LihzcGFuKTtcblxuICAgICAgICAvLyBDYW4gYmUgY2hhbmdlZCB0byBzYWZlRXhlY3V0ZUluVGhlTWlkZGxlQXN5bmMgb25jZSBmb2xsb3dpbmcgaXMgbWVyZ2VkIGFuZCByZWxlYXNlZFxuICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vb3Blbi10ZWxlbWV0cnkvb3BlbnRlbGVtZXRyeS1qcy9wdWxsLzYwMzJcbiAgICAgICAgcmV0dXJuIGFwaS5jb250ZXh0LndpdGgoYXBpLnRyYWNlLnNldFNwYW4oYXBpLmNvbnRleHQuYWN0aXZlKCksIHNwYW4pLCBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgbGV0IGVycm9yO1xuICAgICAgICAgIGxldCByZXN1bHQ7XG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaGFuZGxlci5hcHBseSh0aGlzLCBoYW5kbGVyQXJncyk7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgZXJyb3IgPSBlIDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbnNDb25maWc/LnJlc3BvbnNlSG9vaz8uKHNwYW4sIGVycm9yKTtcblxuICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgc3Bhbi5yZWNvcmRFeGNlcHRpb24oZXJyb3IpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHNwYW4uZW5kKCk7XG5cbiAgICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICAgIGF3YWl0IGZ1bmN0aW9uc0NvbmZpZz8uZXJyb3JIb29rPy4oc3BhbiwgZXJyb3IpO1xuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSk7XG4gICAgICB9O1xuXG4gICAgICBpZiAoZG9jdW1lbnRPck9wdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmNhbGwodGhpcywgZG9jdW1lbnRPck9wdGlvbnMsIHdyYXBwZWRIYW5kbGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBvcmlnaW5hbC5jYWxsKHRoaXMsIHdyYXBwZWRIYW5kbGVyKTtcbiAgICAgIH1cbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiB3cmFwQ29tbW9uRnVuY3Rpb25zKFxuICBtb2R1bGVFeHBvcnRzLFxuICB3cmFwLFxuICB1bndyYXAsXG4gIHRyYWNlcixcbiAgZnVuY3Rpb25zQ29uZmlnLFxuICB0cmlnZ2VyVHlwZSxcbikge1xuICB1bndyYXBDb21tb25GdW5jdGlvbnMobW9kdWxlRXhwb3J0cywgdW53cmFwKTtcblxuICBzd2l0Y2ggKHRyaWdnZXJUeXBlKSB7XG4gICAgY2FzZSAnZnVuY3Rpb24nOlxuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25SZXF1ZXN0JywgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ2h0dHAucmVxdWVzdCcpKTtcbiAgICAgIHdyYXAobW9kdWxlRXhwb3J0cywgJ29uQ2FsbCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdodHRwLmNhbGwnKSk7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2ZpcmVzdG9yZSc6XG4gICAgICB3cmFwKG1vZHVsZUV4cG9ydHMsICdvbkRvY3VtZW50Q3JlYXRlZCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQuY3JlYXRlZCcpKTtcbiAgICAgIHdyYXAobW9kdWxlRXhwb3J0cywgJ29uRG9jdW1lbnRVcGRhdGVkJywgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ2ZpcmVzdG9yZS5kb2N1bWVudC51cGRhdGVkJykpO1xuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25Eb2N1bWVudERlbGV0ZWQnLCBwYXRjaFYyRnVuY3Rpb25zKHRyYWNlciwgZnVuY3Rpb25zQ29uZmlnLCAnZmlyZXN0b3JlLmRvY3VtZW50LmRlbGV0ZWQnKSk7XG4gICAgICB3cmFwKG1vZHVsZUV4cG9ydHMsICdvbkRvY3VtZW50V3JpdHRlbicsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQud3JpdHRlbicpKTtcbiAgICAgIHdyYXAoXG4gICAgICAgIG1vZHVsZUV4cG9ydHMsXG4gICAgICAgICdvbkRvY3VtZW50Q3JlYXRlZFdpdGhBdXRoQ29udGV4dCcsXG4gICAgICAgIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQuY3JlYXRlZCcpLFxuICAgICAgKTtcbiAgICAgIHdyYXAoXG4gICAgICAgIG1vZHVsZUV4cG9ydHMsXG4gICAgICAgICdvbkRvY3VtZW50VXBkYXRlZFdpdGhBdXRoQ29udGV4dCcsXG4gICAgICAgIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdmaXJlc3RvcmUuZG9jdW1lbnQudXBkYXRlZCcpLFxuICAgICAgKTtcblxuICAgICAgd3JhcChcbiAgICAgICAgbW9kdWxlRXhwb3J0cyxcbiAgICAgICAgJ29uRG9jdW1lbnREZWxldGVkV2l0aEF1dGhDb250ZXh0JyxcbiAgICAgICAgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ2ZpcmVzdG9yZS5kb2N1bWVudC5kZWxldGVkJyksXG4gICAgICApO1xuXG4gICAgICB3cmFwKFxuICAgICAgICBtb2R1bGVFeHBvcnRzLFxuICAgICAgICAnb25Eb2N1bWVudFdyaXR0ZW5XaXRoQXV0aENvbnRleHQnLFxuICAgICAgICBwYXRjaFYyRnVuY3Rpb25zKHRyYWNlciwgZnVuY3Rpb25zQ29uZmlnLCAnZmlyZXN0b3JlLmRvY3VtZW50LndyaXR0ZW4nKSxcbiAgICAgICk7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ3NjaGVkdWxlcic6XG4gICAgICB3cmFwKG1vZHVsZUV4cG9ydHMsICdvblNjaGVkdWxlJywgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ3NjaGVkdWxlci5zY2hlZHVsZWQnKSk7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ3N0b3JhZ2UnOlxuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25PYmplY3RGaW5hbGl6ZWQnLCBwYXRjaFYyRnVuY3Rpb25zKHRyYWNlciwgZnVuY3Rpb25zQ29uZmlnLCAnc3RvcmFnZS5vYmplY3QuZmluYWxpemVkJykpO1xuICAgICAgd3JhcChtb2R1bGVFeHBvcnRzLCAnb25PYmplY3RBcmNoaXZlZCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdzdG9yYWdlLm9iamVjdC5hcmNoaXZlZCcpKTtcbiAgICAgIHdyYXAobW9kdWxlRXhwb3J0cywgJ29uT2JqZWN0RGVsZXRlZCcsIHBhdGNoVjJGdW5jdGlvbnModHJhY2VyLCBmdW5jdGlvbnNDb25maWcsICdzdG9yYWdlLm9iamVjdC5kZWxldGVkJykpO1xuICAgICAgd3JhcChcbiAgICAgICAgbW9kdWxlRXhwb3J0cyxcbiAgICAgICAgJ29uT2JqZWN0TWV0YWRhdGFVcGRhdGVkJyxcbiAgICAgICAgcGF0Y2hWMkZ1bmN0aW9ucyh0cmFjZXIsIGZ1bmN0aW9uc0NvbmZpZywgJ3N0b3JhZ2Uub2JqZWN0Lm1ldGFkYXRhVXBkYXRlZCcpLFxuICAgICAgKTtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIG1vZHVsZUV4cG9ydHM7XG59XG5cbmZ1bmN0aW9uIHVud3JhcENvbW1vbkZ1bmN0aW9ucyhcbiAgbW9kdWxlRXhwb3J0cyxcbiAgdW53cmFwLFxuKSB7XG4gIGNvbnN0IG1ldGhvZHMgPSBbXG4gICAgJ29uU2NoZWR1bGUnLFxuICAgICdvblJlcXVlc3QnLFxuICAgICdvbkNhbGwnLFxuICAgICdvbk9iamVjdEZpbmFsaXplZCcsXG4gICAgJ29uT2JqZWN0QXJjaGl2ZWQnLFxuICAgICdvbk9iamVjdERlbGV0ZWQnLFxuICAgICdvbk9iamVjdE1ldGFkYXRhVXBkYXRlZCcsXG4gICAgJ29uRG9jdW1lbnRDcmVhdGVkJyxcbiAgICAnb25Eb2N1bWVudFVwZGF0ZWQnLFxuICAgICdvbkRvY3VtZW50RGVsZXRlZCcsXG4gICAgJ29uRG9jdW1lbnRXcml0dGVuJyxcbiAgICAnb25Eb2N1bWVudENyZWF0ZWRXaXRoQXV0aENvbnRleHQnLFxuICAgICdvbkRvY3VtZW50VXBkYXRlZFdpdGhBdXRoQ29udGV4dCcsXG4gICAgJ29uRG9jdW1lbnREZWxldGVkV2l0aEF1dGhDb250ZXh0JyxcbiAgICAnb25Eb2N1bWVudFdyaXR0ZW5XaXRoQXV0aENvbnRleHQnLFxuICBdO1xuXG4gIGZvciAoY29uc3QgbWV0aG9kIG9mIG1ldGhvZHMpIHtcbiAgICBpZiAoaW5zdHJ1bWVudGF0aW9uLmlzV3JhcHBlZChtb2R1bGVFeHBvcnRzW21ldGhvZF0pKSB7XG4gICAgICB1bndyYXAobW9kdWxlRXhwb3J0cywgbWV0aG9kKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG1vZHVsZUV4cG9ydHM7XG59XG5cbmV4cG9ydHMucGF0Y2hGdW5jdGlvbnMgPSBwYXRjaEZ1bmN0aW9ucztcbmV4cG9ydHMucGF0Y2hWMkZ1bmN0aW9ucyA9IHBhdGNoVjJGdW5jdGlvbnM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1mdW5jdGlvbnMuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/otel/patches/functions.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js ***!
\*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationGenericPool = __webpack_require__(/*! @opentelemetry/instrumentation-generic-pool */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-generic-pool@0.57.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-generic-pool/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'GenericPool';\n\nconst instrumentGenericPool = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationGenericPool.GenericPoolInstrumentation({}));\n\nconst _genericPoolIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentGenericPool();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n instrumentationWrappedCallback?.(() =>\n client.on('spanStart', span => {\n const spanJSON = core.spanToJSON(span);\n\n const spanDescription = spanJSON.description;\n\n // typo in emitted span for version <= 0.38.0 of @opentelemetry/instrumentation-generic-pool\n const isGenericPoolSpan =\n spanDescription === 'generic-pool.aquire' || spanDescription === 'generic-pool.acquire';\n\n if (isGenericPoolSpan) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.generic_pool');\n }\n }),\n );\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [generic-pool](https://www.npmjs.com/package/generic-pool) library.\n *\n * For more information, see the [`genericPoolIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/genericpool/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.genericPoolIntegration()],\n * });\n * ```\n */\nconst genericPoolIntegration = core.defineIntegration(_genericPoolIntegration);\n\nexports.genericPoolIntegration = genericPoolIntegration;\nexports.instrumentGenericPool = instrumentGenericPool;\n//# sourceMappingURL=genericPool.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ2VuZXJpY1Bvb2wuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsbUNBQW1DLG1CQUFPLENBQUMsdU9BQTZDO0FBQ3hGLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBLGtKQUFrSjs7QUFFbEo7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQSw4QkFBOEI7QUFDOUIsNkJBQTZCO0FBQzdCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2dlbmVyaWNQb29sLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25HZW5lcmljUG9vbCA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1nZW5lcmljLXBvb2wnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdHZW5lcmljUG9vbCc7XG5cbmNvbnN0IGluc3RydW1lbnRHZW5lcmljUG9vbCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkdlbmVyaWNQb29sLkdlbmVyaWNQb29sSW5zdHJ1bWVudGF0aW9uKHt9KSk7XG5cbmNvbnN0IF9nZW5lcmljUG9vbEludGVncmF0aW9uID0gKCgpID0+IHtcbiAgbGV0IGluc3RydW1lbnRhdGlvbldyYXBwZWRDYWxsYmFjaztcblxuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gaW5zdHJ1bWVudEdlbmVyaWNQb29sKCk7XG4gICAgICBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2sgPSBub2RlQ29yZS5pbnN0cnVtZW50V2hlbldyYXBwZWQoaW5zdHJ1bWVudGF0aW9uKTtcbiAgICB9LFxuXG4gICAgc2V0dXAoY2xpZW50KSB7XG4gICAgICBpbnN0cnVtZW50YXRpb25XcmFwcGVkQ2FsbGJhY2s/LigoKSA9PlxuICAgICAgICBjbGllbnQub24oJ3NwYW5TdGFydCcsIHNwYW4gPT4ge1xuICAgICAgICAgIGNvbnN0IHNwYW5KU09OID0gY29yZS5zcGFuVG9KU09OKHNwYW4pO1xuXG4gICAgICAgICAgY29uc3Qgc3BhbkRlc2NyaXB0aW9uID0gc3BhbkpTT04uZGVzY3JpcHRpb247XG5cbiAgICAgICAgICAvLyB0eXBvIGluIGVtaXR0ZWQgc3BhbiBmb3IgdmVyc2lvbiA8PSAwLjM4LjAgb2YgQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWdlbmVyaWMtcG9vbFxuICAgICAgICAgIGNvbnN0IGlzR2VuZXJpY1Bvb2xTcGFuID1cbiAgICAgICAgICAgIHNwYW5EZXNjcmlwdGlvbiA9PT0gJ2dlbmVyaWMtcG9vbC5hcXVpcmUnIHx8IHNwYW5EZXNjcmlwdGlvbiA9PT0gJ2dlbmVyaWMtcG9vbC5hY3F1aXJlJztcblxuICAgICAgICAgIGlmIChpc0dlbmVyaWNQb29sU3Bhbikge1xuICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTiwgJ2F1dG8uZGIub3RlbC5nZW5lcmljX3Bvb2wnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2dlbmVyaWMtcG9vbF0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvZ2VuZXJpYy1wb29sKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9nZW5lcmljcG9vbC8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmdlbmVyaWNQb29sSW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqIGBgYFxuICovXG5jb25zdCBnZW5lcmljUG9vbEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuZ2VuZXJpY1Bvb2xJbnRlZ3JhdGlvbiA9IGdlbmVyaWNQb29sSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRHZW5lcmljUG9vbCA9IGluc3RydW1lbnRHZW5lcmljUG9vbDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdlbmVyaWNQb29sLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js ***!
\********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js\");\n\nconst instrumentGoogleGenAI = nodeCore.generateInstrumentOnce(\n core.GOOGLE_GENAI_INTEGRATION_NAME,\n options => new instrumentation.SentryGoogleGenAiInstrumentation(options),\n);\n\nconst _googleGenAIIntegration = ((options = {}) => {\n return {\n name: core.GOOGLE_GENAI_INTEGRATION_NAME,\n setupOnce() {\n instrumentGoogleGenAI(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the Google Generative AI SDK.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments Google GenAI SDK client instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.googleGenAiIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record prompt messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.googleGenAiIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.googleGenAiIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n */\nconst googleGenAIIntegration = core.defineIntegration(_googleGenAIIntegration);\n\nexports.googleGenAIIntegration = googleGenAIIntegration;\nexports.instrumentGoogleGenAI = instrumentGoogleGenAI;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsc0tBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw4Q0FBOEM7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsOEJBQThCO0FBQzlCLDZCQUE2QjtBQUM3QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9nb29nbGUtZ2VuYWkvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRHb29nbGVHZW5BSSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIGNvcmUuR09PR0xFX0dFTkFJX0lOVEVHUkFUSU9OX05BTUUsXG4gIG9wdGlvbnMgPT4gbmV3IGluc3RydW1lbnRhdGlvbi5TZW50cnlHb29nbGVHZW5BaUluc3RydW1lbnRhdGlvbihvcHRpb25zKSxcbik7XG5cbmNvbnN0IF9nb29nbGVHZW5BSUludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLkdPT0dMRV9HRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRHb29nbGVHZW5BSShvcHRpb25zKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgR29vZ2xlIEdlbmVyYXRpdmUgQUkgU0RLLlxuICpcbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgZW5hYmxlZCBieSBkZWZhdWx0LlxuICpcbiAqIFdoZW4gY29uZmlndXJlZCwgdGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IGluc3RydW1lbnRzIEdvb2dsZSBHZW5BSSBTREsgY2xpZW50IGluc3RhbmNlc1xuICogdG8gY2FwdHVyZSB0ZWxlbWV0cnkgZGF0YSBmb2xsb3dpbmcgT3BlblRlbGVtZXRyeSBTZW1hbnRpYyBDb252ZW50aW9ucyBmb3IgR2VuZXJhdGl2ZSBBSS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogaW1wb3J0ICogYXMgU2VudHJ5IGZyb20gJ0BzZW50cnkvbm9kZSc7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkuZ29vZ2xlR2VuQWlJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogIyMgT3B0aW9uc1xuICpcbiAqIC0gYHJlY29yZElucHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHByb21wdCBtZXNzYWdlcyAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICogLSBgcmVjb3JkT3V0cHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHJlc3BvbnNlIHRleHQgKGRlZmF1bHQ6IHJlc3BlY3RzIGBzZW5kRGVmYXVsdFBpaWAgY2xpZW50IG9wdGlvbilcbiAqXG4gKiAjIyMgRGVmYXVsdCBCZWhhdmlvclxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBpbnRlZ3JhdGlvbiB3aWxsOlxuICogLSBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIE9OTFkgaWYgYHNlbmREZWZhdWx0UGlpYCBpcyBzZXQgdG8gYHRydWVgIGluIHlvdXIgU2VudHJ5IGNsaWVudCBvcHRpb25zXG4gKiAtIE90aGVyd2lzZSwgaW5wdXRzIGFuZCBvdXRwdXRzIGFyZSBOT1QgcmVjb3JkZWQgdW5sZXNzIGV4cGxpY2l0bHkgZW5hYmxlZFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiAvLyBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIHdoZW4gc2VuZERlZmF1bHRQaWkgaXMgZmFsc2VcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5Lmdvb2dsZUdlbkFpSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiB0cnVlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogdHJ1ZVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KTtcbiAqXG4gKiAvLyBOZXZlciByZWNvcmQgaW5wdXRzL291dHB1dHMgcmVnYXJkbGVzcyBvZiBzZW5kRGVmYXVsdFBpaVxuICogU2VudHJ5LmluaXQoe1xuICogICBzZW5kRGVmYXVsdFBpaTogdHJ1ZSxcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5Lmdvb2dsZUdlbkFpSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiBmYWxzZSxcbiAqICAgICAgIHJlY29yZE91dHB1dHM6IGZhbHNlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICovXG5jb25zdCBnb29nbGVHZW5BSUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfZ29vZ2xlR2VuQUlJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuZ29vZ2xlR2VuQUlJbnRlZ3JhdGlvbiA9IGdvb2dsZUdlbkFJSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRHb29nbGVHZW5BSSA9IGluc3RydW1lbnRHb29nbGVHZW5BSTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js ***!
\******************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.10.0 <2'];\n\n/**\n * Represents the patched shape of the Google GenAI module export.\n */\n\n/**\n * Sentry Google GenAI instrumentation using OpenTelemetry.\n */\nclass SentryGoogleGenAiInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-google-genai', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n '@google/genai',\n supportedVersions,\n exports$1 => this._patch(exports$1),\n exports$1 => exports$1,\n // In CJS, @google/genai re-exports from (dist/node/index.cjs) file.\n // Patching only the root module sometimes misses the real implementation or\n // gets overwritten when that file is loaded. We add a file-level patch so that\n // _patch runs again on the concrete implementation\n [\n new instrumentation.InstrumentationNodeModuleFile(\n '@google/genai/dist/node/index.cjs',\n supportedVersions,\n exports$1 => this._patch(exports$1),\n exports$1 => exports$1,\n ),\n ],\n );\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the Google GenAI client constructor.\n */\n _patch(exports$1) {\n const Original = exports$1.GoogleGenAI;\n const config = this.getConfig();\n\n if (typeof Original !== 'function') {\n return exports$1;\n }\n\n const WrappedGoogleGenAI = function ( ...args) {\n // Check if wrapping should be skipped (e.g., when LangChain is handling instrumentation)\n if (core._INTERNAL_shouldSkipAiProviderWrapping(core.GOOGLE_GENAI_INTEGRATION_NAME)) {\n return Reflect.construct(Original, args) ;\n }\n\n const instance = Reflect.construct(Original, args);\n\n return core.instrumentGoogleGenAIClient(instance, config);\n };\n\n // Preserve static and prototype chains\n Object.setPrototypeOf(WrappedGoogleGenAI, Original);\n Object.setPrototypeOf(WrappedGoogleGenAI.prototype, Original.prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedGoogleGenAI, key, descriptor);\n }\n }\n }\n\n // Replace google genai exports with the wrapped constructor\n core.replaceExports(exports$1, 'GoogleGenAI', WrappedGoogleGenAI);\n\n return exports$1;\n }\n}\n\nexports.SentryGoogleGenAiInstrumentation = SentryGoogleGenAiInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQjtBQUMxQjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSx3Q0FBd0M7QUFDeEMiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ29vZ2xlLWdlbmFpL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG5jb25zdCBzdXBwb3J0ZWRWZXJzaW9ucyA9IFsnPj0wLjEwLjAgPDInXTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBwYXRjaGVkIHNoYXBlIG9mIHRoZSBHb29nbGUgR2VuQUkgbW9kdWxlIGV4cG9ydC5cbiAqL1xuXG4vKipcbiAqIFNlbnRyeSBHb29nbGUgR2VuQUkgaW5zdHJ1bWVudGF0aW9uIHVzaW5nIE9wZW5UZWxlbWV0cnkuXG4gKi9cbmNsYXNzIFNlbnRyeUdvb2dsZUdlbkFpSW5zdHJ1bWVudGF0aW9uIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0ge30pIHtcbiAgICBzdXBlcignQHNlbnRyeS9pbnN0cnVtZW50YXRpb24tZ29vZ2xlLWdlbmFpJywgY29yZS5TREtfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgaW5zdHJ1bWVudGF0aW9uIGJ5IGRlZmluaW5nIHRoZSBtb2R1bGVzIHRvIGJlIHBhdGNoZWQuXG4gICAqL1xuICAgaW5pdCgpIHtcbiAgICBjb25zdCBtb2R1bGUgPSBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKFxuICAgICAgJ0Bnb29nbGUvZ2VuYWknLFxuICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICBleHBvcnRzJDEgPT4gdGhpcy5fcGF0Y2goZXhwb3J0cyQxKSxcbiAgICAgIGV4cG9ydHMkMSA9PiBleHBvcnRzJDEsXG4gICAgICAvLyBJbiBDSlMsIEBnb29nbGUvZ2VuYWkgcmUtZXhwb3J0cyBmcm9tIChkaXN0L25vZGUvaW5kZXguY2pzKSBmaWxlLlxuICAgICAgLy8gUGF0Y2hpbmcgb25seSB0aGUgcm9vdCBtb2R1bGUgc29tZXRpbWVzIG1pc3NlcyB0aGUgcmVhbCBpbXBsZW1lbnRhdGlvbiBvclxuICAgICAgLy8gZ2V0cyBvdmVyd3JpdHRlbiB3aGVuIHRoYXQgZmlsZSBpcyBsb2FkZWQuIFdlIGFkZCBhIGZpbGUtbGV2ZWwgcGF0Y2ggc28gdGhhdFxuICAgICAgLy8gX3BhdGNoIHJ1bnMgYWdhaW4gb24gdGhlIGNvbmNyZXRlIGltcGxlbWVudGF0aW9uXG4gICAgICBbXG4gICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZUZpbGUoXG4gICAgICAgICAgJ0Bnb29nbGUvZ2VuYWkvZGlzdC9ub2RlL2luZGV4LmNqcycsXG4gICAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgICAgZXhwb3J0cyQxID0+IHRoaXMuX3BhdGNoKGV4cG9ydHMkMSksXG4gICAgICAgICAgZXhwb3J0cyQxID0+IGV4cG9ydHMkMSxcbiAgICAgICAgKSxcbiAgICAgIF0sXG4gICAgKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcmUgcGF0Y2ggbG9naWMgYXBwbHlpbmcgaW5zdHJ1bWVudGF0aW9uIHRvIHRoZSBHb29nbGUgR2VuQUkgY2xpZW50IGNvbnN0cnVjdG9yLlxuICAgKi9cbiAgIF9wYXRjaChleHBvcnRzJDEpIHtcbiAgICBjb25zdCBPcmlnaW5hbCA9IGV4cG9ydHMkMS5Hb29nbGVHZW5BSTtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldENvbmZpZygpO1xuXG4gICAgaWYgKHR5cGVvZiBPcmlnaW5hbCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgICB9XG5cbiAgICBjb25zdCBXcmFwcGVkR29vZ2xlR2VuQUkgPSBmdW5jdGlvbiAoIC4uLmFyZ3MpIHtcbiAgICAgIC8vIENoZWNrIGlmIHdyYXBwaW5nIHNob3VsZCBiZSBza2lwcGVkIChlLmcuLCB3aGVuIExhbmdDaGFpbiBpcyBoYW5kbGluZyBpbnN0cnVtZW50YXRpb24pXG4gICAgICBpZiAoY29yZS5fSU5URVJOQUxfc2hvdWxkU2tpcEFpUHJvdmlkZXJXcmFwcGluZyhjb3JlLkdPT0dMRV9HRU5BSV9JTlRFR1JBVElPTl9OQU1FKSkge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5jb25zdHJ1Y3QoT3JpZ2luYWwsIGFyZ3MpIDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5zdGFuY2UgPSBSZWZsZWN0LmNvbnN0cnVjdChPcmlnaW5hbCwgYXJncyk7XG5cbiAgICAgIHJldHVybiBjb3JlLmluc3RydW1lbnRHb29nbGVHZW5BSUNsaWVudChpbnN0YW5jZSwgY29uZmlnKTtcbiAgICB9O1xuXG4gICAgLy8gUHJlc2VydmUgc3RhdGljIGFuZCBwcm90b3R5cGUgY2hhaW5zXG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRHb29nbGVHZW5BSSwgT3JpZ2luYWwpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZihXcmFwcGVkR29vZ2xlR2VuQUkucHJvdG90eXBlLCBPcmlnaW5hbC5wcm90b3R5cGUpO1xuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoT3JpZ2luYWwpKSB7XG4gICAgICBpZiAoIVsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10uaW5jbHVkZXMoa2V5KSkge1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihPcmlnaW5hbCwga2V5KTtcbiAgICAgICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoV3JhcHBlZEdvb2dsZUdlbkFJLCBrZXksIGRlc2NyaXB0b3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVwbGFjZSBnb29nbGUgZ2VuYWkgZXhwb3J0cyB3aXRoIHRoZSB3cmFwcGVkIGNvbnN0cnVjdG9yXG4gICAgY29yZS5yZXBsYWNlRXhwb3J0cyhleHBvcnRzJDEsICdHb29nbGVHZW5BSScsIFdyYXBwZWRHb29nbGVHZW5BSSk7XG5cbiAgICByZXR1cm4gZXhwb3J0cyQxO1xuICB9XG59XG5cbmV4cG9ydHMuU2VudHJ5R29vZ2xlR2VuQWlJbnN0cnVtZW50YXRpb24gPSBTZW50cnlHb29nbGVHZW5BaUluc3RydW1lbnRhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluc3RydW1lbnRhdGlvbi5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentationGraphql = __webpack_require__(/*! @opentelemetry/instrumentation-graphql */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-graphql@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-graphql/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst opentelemetry = __webpack_require__(/*! @sentry/opentelemetry */ \"(ssr)/./node_modules/.pnpm/@sentry+opentelemetry@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hoo_70f539428297572a9e3752da9c315982/node_modules/@sentry/opentelemetry/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Graphql';\n\nconst instrumentGraphql = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationGraphql.GraphQLInstrumentation,\n (_options) => {\n const options = getOptionsWithDefaults(_options);\n\n return {\n ...options,\n responseHook(span, result) {\n nodeCore.addOriginToSpan(span, 'auto.graphql.otel.graphql');\n\n // We want to ensure spans are marked as errored if there are errors in the result\n // We only do that if the span is not already marked with a status\n const resultWithMaybeError = result ;\n if (resultWithMaybeError.errors?.length && !core.spanToJSON(span).status) {\n span.setStatus({ code: api.SpanStatusCode.ERROR });\n }\n\n const attributes = core.spanToJSON(span).data;\n\n // If operation.name is not set, we fall back to use operation.type only\n const operationType = attributes['graphql.operation.type'];\n const operationName = attributes['graphql.operation.name'];\n\n if (options.useOperationNameForRootSpan && operationType) {\n const rootSpan = core.getRootSpan(span);\n const rootSpanAttributes = core.spanToJSON(rootSpan).data;\n\n const existingOperations = rootSpanAttributes[opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION] || [];\n\n const newOperation = operationName ? `${operationType} ${operationName}` : `${operationType}`;\n\n // We keep track of each operation on the root span\n // This can either be a string, or an array of strings (if there are multiple operations)\n if (Array.isArray(existingOperations)) {\n (existingOperations ).push(newOperation);\n rootSpan.setAttribute(opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, existingOperations);\n } else if (typeof existingOperations === 'string') {\n rootSpan.setAttribute(opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, [existingOperations, newOperation]);\n } else {\n rootSpan.setAttribute(opentelemetry.SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, newOperation);\n }\n\n if (!core.spanToJSON(rootSpan).data['original-description']) {\n rootSpan.setAttribute('original-description', core.spanToJSON(rootSpan).description);\n }\n // Important for e.g. @sentry/aws-serverless because this would otherwise overwrite the name again\n rootSpan.updateName(\n `${core.spanToJSON(rootSpan).data['original-description']} (${getGraphqlOperationNamesFromAttribute(\n existingOperations,\n )})`,\n );\n }\n },\n };\n },\n);\n\nconst _graphqlIntegration = ((options = {}) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n // We set defaults here, too, because otherwise we'd update the instrumentation config\n // to the config without defaults, as `generateInstrumentOnce` automatically calls `setConfig(options)`\n // when being called the second time\n instrumentGraphql(getOptionsWithDefaults(options));\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [graphql](https://www.npmjs.com/package/graphql) library.\n *\n * For more information, see the [`graphqlIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/graphql/).\n *\n * @param {GraphqlOptions} options Configuration options for the GraphQL integration.\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.graphqlIntegration()],\n * });\n */\nconst graphqlIntegration = core.defineIntegration(_graphqlIntegration);\n\nfunction getOptionsWithDefaults(options) {\n return {\n ignoreResolveSpans: true,\n ignoreTrivialResolveSpans: true,\n useOperationNameForRootSpan: true,\n ...options,\n };\n}\n\n// copy from packages/opentelemetry/utils\nfunction getGraphqlOperationNamesFromAttribute(attr) {\n if (Array.isArray(attr)) {\n // oxlint-disable-next-line typescript/require-array-sort-compare\n const sorted = attr.slice().sort();\n\n // Up to 5 items, we just add all of them\n if (sorted.length <= 5) {\n return sorted.join(', ');\n } else {\n // Else, we add the first 5 and the diff of other operations\n return `${sorted.slice(0, 5).join(', ')}, +${sorted.length - 5}`;\n }\n }\n\n return `${attr}`;\n}\n\nexports.graphqlIntegration = graphqlIntegration;\nexports.instrumentGraphql = instrumentGraphql;\n//# sourceMappingURL=graphql.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ3JhcGhxbC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLCtCQUErQixtQkFBTyxDQUFDLHdOQUF3QztBQUMvRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1CO0FBQzVDLHNCQUFzQixtQkFBTyxDQUFDLHdPQUF1Qjs7QUFFckQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQixnQ0FBZ0M7QUFDM0Q7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSxrREFBa0QsZUFBZSxFQUFFLGNBQWMsT0FBTyxjQUFjOztBQUV0RztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWTtBQUNaO0FBQ0EsWUFBWTtBQUNaO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsd0RBQXdELEdBQUc7QUFDMUU7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBLEdBQUc7QUFDSDs7QUFFQSwwQ0FBMEM7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLGdCQUFnQjtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQSxnQkFBZ0IsOEJBQThCLEtBQUssa0JBQWtCO0FBQ3JFO0FBQ0E7O0FBRUEsWUFBWSxLQUFLO0FBQ2pCOztBQUVBLDBCQUEwQjtBQUMxQix5QkFBeUI7QUFDekIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvZ3JhcGhxbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCBpbnN0cnVtZW50YXRpb25HcmFwaHFsID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWdyYXBocWwnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IG9wZW50ZWxlbWV0cnkgPSByZXF1aXJlKCdAc2VudHJ5L29wZW50ZWxlbWV0cnknKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdHcmFwaHFsJztcblxuY29uc3QgaW5zdHJ1bWVudEdyYXBocWwgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICBpbnN0cnVtZW50YXRpb25HcmFwaHFsLkdyYXBoUUxJbnN0cnVtZW50YXRpb24sXG4gIChfb3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBnZXRPcHRpb25zV2l0aERlZmF1bHRzKF9vcHRpb25zKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgcmVzcG9uc2VIb29rKHNwYW4sIHJlc3VsdCkge1xuICAgICAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uZ3JhcGhxbC5vdGVsLmdyYXBocWwnKTtcblxuICAgICAgICAvLyBXZSB3YW50IHRvIGVuc3VyZSBzcGFucyBhcmUgbWFya2VkIGFzIGVycm9yZWQgaWYgdGhlcmUgYXJlIGVycm9ycyBpbiB0aGUgcmVzdWx0XG4gICAgICAgIC8vIFdlIG9ubHkgZG8gdGhhdCBpZiB0aGUgc3BhbiBpcyBub3QgYWxyZWFkeSBtYXJrZWQgd2l0aCBhIHN0YXR1c1xuICAgICAgICBjb25zdCByZXN1bHRXaXRoTWF5YmVFcnJvciA9IHJlc3VsdCA7XG4gICAgICAgIGlmIChyZXN1bHRXaXRoTWF5YmVFcnJvci5lcnJvcnM/Lmxlbmd0aCAmJiAhY29yZS5zcGFuVG9KU09OKHNwYW4pLnN0YXR1cykge1xuICAgICAgICAgIHNwYW4uc2V0U3RhdHVzKHsgY29kZTogYXBpLlNwYW5TdGF0dXNDb2RlLkVSUk9SIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYXR0cmlidXRlcyA9IGNvcmUuc3BhblRvSlNPTihzcGFuKS5kYXRhO1xuXG4gICAgICAgIC8vIElmIG9wZXJhdGlvbi5uYW1lIGlzIG5vdCBzZXQsIHdlIGZhbGwgYmFjayB0byB1c2Ugb3BlcmF0aW9uLnR5cGUgb25seVxuICAgICAgICBjb25zdCBvcGVyYXRpb25UeXBlID0gYXR0cmlidXRlc1snZ3JhcGhxbC5vcGVyYXRpb24udHlwZSddO1xuICAgICAgICBjb25zdCBvcGVyYXRpb25OYW1lID0gYXR0cmlidXRlc1snZ3JhcGhxbC5vcGVyYXRpb24ubmFtZSddO1xuXG4gICAgICAgIGlmIChvcHRpb25zLnVzZU9wZXJhdGlvbk5hbWVGb3JSb290U3BhbiAmJiBvcGVyYXRpb25UeXBlKSB7XG4gICAgICAgICAgY29uc3Qgcm9vdFNwYW4gPSBjb3JlLmdldFJvb3RTcGFuKHNwYW4pO1xuICAgICAgICAgIGNvbnN0IHJvb3RTcGFuQXR0cmlidXRlcyA9IGNvcmUuc3BhblRvSlNPTihyb290U3BhbikuZGF0YTtcblxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nT3BlcmF0aW9ucyA9IHJvb3RTcGFuQXR0cmlidXRlc1tvcGVudGVsZW1ldHJ5LlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfR1JBUEhRTF9PUEVSQVRJT05dIHx8IFtdO1xuXG4gICAgICAgICAgY29uc3QgbmV3T3BlcmF0aW9uID0gb3BlcmF0aW9uTmFtZSA/IGAke29wZXJhdGlvblR5cGV9ICR7b3BlcmF0aW9uTmFtZX1gIDogYCR7b3BlcmF0aW9uVHlwZX1gO1xuXG4gICAgICAgICAgLy8gV2Uga2VlcCB0cmFjayBvZiBlYWNoIG9wZXJhdGlvbiBvbiB0aGUgcm9vdCBzcGFuXG4gICAgICAgICAgLy8gVGhpcyBjYW4gZWl0aGVyIGJlIGEgc3RyaW5nLCBvciBhbiBhcnJheSBvZiBzdHJpbmdzIChpZiB0aGVyZSBhcmUgbXVsdGlwbGUgb3BlcmF0aW9ucylcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShleGlzdGluZ09wZXJhdGlvbnMpKSB7XG4gICAgICAgICAgICAoZXhpc3RpbmdPcGVyYXRpb25zICkucHVzaChuZXdPcGVyYXRpb24pO1xuICAgICAgICAgICAgcm9vdFNwYW4uc2V0QXR0cmlidXRlKG9wZW50ZWxlbWV0cnkuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9HUkFQSFFMX09QRVJBVElPTiwgZXhpc3RpbmdPcGVyYXRpb25zKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBleGlzdGluZ09wZXJhdGlvbnMgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICByb290U3Bhbi5zZXRBdHRyaWJ1dGUob3BlbnRlbGVtZXRyeS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX0dSQVBIUUxfT1BFUkFUSU9OLCBbZXhpc3RpbmdPcGVyYXRpb25zLCBuZXdPcGVyYXRpb25dKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcm9vdFNwYW4uc2V0QXR0cmlidXRlKG9wZW50ZWxlbWV0cnkuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9HUkFQSFFMX09QRVJBVElPTiwgbmV3T3BlcmF0aW9uKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIWNvcmUuc3BhblRvSlNPTihyb290U3BhbikuZGF0YVsnb3JpZ2luYWwtZGVzY3JpcHRpb24nXSkge1xuICAgICAgICAgICAgcm9vdFNwYW4uc2V0QXR0cmlidXRlKCdvcmlnaW5hbC1kZXNjcmlwdGlvbicsIGNvcmUuc3BhblRvSlNPTihyb290U3BhbikuZGVzY3JpcHRpb24pO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBJbXBvcnRhbnQgZm9yIGUuZy4gQHNlbnRyeS9hd3Mtc2VydmVybGVzcyBiZWNhdXNlIHRoaXMgd291bGQgb3RoZXJ3aXNlIG92ZXJ3cml0ZSB0aGUgbmFtZSBhZ2FpblxuICAgICAgICAgIHJvb3RTcGFuLnVwZGF0ZU5hbWUoXG4gICAgICAgICAgICBgJHtjb3JlLnNwYW5Ub0pTT04ocm9vdFNwYW4pLmRhdGFbJ29yaWdpbmFsLWRlc2NyaXB0aW9uJ119ICgke2dldEdyYXBocWxPcGVyYXRpb25OYW1lc0Zyb21BdHRyaWJ1dGUoXG4gICAgICAgICAgICAgIGV4aXN0aW5nT3BlcmF0aW9ucyxcbiAgICAgICAgICAgICl9KWAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9O1xuICB9LFxuKTtcblxuY29uc3QgX2dyYXBocWxJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICAvLyBXZSBzZXQgZGVmYXVsdHMgaGVyZSwgdG9vLCBiZWNhdXNlIG90aGVyd2lzZSB3ZSdkIHVwZGF0ZSB0aGUgaW5zdHJ1bWVudGF0aW9uIGNvbmZpZ1xuICAgICAgLy8gdG8gdGhlIGNvbmZpZyB3aXRob3V0IGRlZmF1bHRzLCBhcyBgZ2VuZXJhdGVJbnN0cnVtZW50T25jZWAgYXV0b21hdGljYWxseSBjYWxscyBgc2V0Q29uZmlnKG9wdGlvbnMpYFxuICAgICAgLy8gd2hlbiBiZWluZyBjYWxsZWQgdGhlIHNlY29uZCB0aW1lXG4gICAgICBpbnN0cnVtZW50R3JhcGhxbChnZXRPcHRpb25zV2l0aERlZmF1bHRzKG9wdGlvbnMpKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2dyYXBocWxdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2dyYXBocWwpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BncmFwaHFsSW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvZ3JhcGhxbC8pLlxuICpcbiAqIEBwYXJhbSB7R3JhcGhxbE9wdGlvbnN9IG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgR3JhcGhRTCBpbnRlZ3JhdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogIGludGVncmF0aW9uczogW1NlbnRyeS5ncmFwaHFsSW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqL1xuY29uc3QgZ3JhcGhxbEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfZ3JhcGhxbEludGVncmF0aW9uKTtcblxuZnVuY3Rpb24gZ2V0T3B0aW9uc1dpdGhEZWZhdWx0cyhvcHRpb25zKSB7XG4gIHJldHVybiB7XG4gICAgaWdub3JlUmVzb2x2ZVNwYW5zOiB0cnVlLFxuICAgIGlnbm9yZVRyaXZpYWxSZXNvbHZlU3BhbnM6IHRydWUsXG4gICAgdXNlT3BlcmF0aW9uTmFtZUZvclJvb3RTcGFuOiB0cnVlLFxuICAgIC4uLm9wdGlvbnMsXG4gIH07XG59XG5cbi8vIGNvcHkgZnJvbSBwYWNrYWdlcy9vcGVudGVsZW1ldHJ5L3V0aWxzXG5mdW5jdGlvbiBnZXRHcmFwaHFsT3BlcmF0aW9uTmFtZXNGcm9tQXR0cmlidXRlKGF0dHIpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoYXR0cikpIHtcbiAgICAvLyBveGxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdHlwZXNjcmlwdC9yZXF1aXJlLWFycmF5LXNvcnQtY29tcGFyZVxuICAgIGNvbnN0IHNvcnRlZCA9IGF0dHIuc2xpY2UoKS5zb3J0KCk7XG5cbiAgICAvLyBVcCB0byA1IGl0ZW1zLCB3ZSBqdXN0IGFkZCBhbGwgb2YgdGhlbVxuICAgIGlmIChzb3J0ZWQubGVuZ3RoIDw9IDUpIHtcbiAgICAgIHJldHVybiBzb3J0ZWQuam9pbignLCAnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRWxzZSwgd2UgYWRkIHRoZSBmaXJzdCA1IGFuZCB0aGUgZGlmZiBvZiBvdGhlciBvcGVyYXRpb25zXG4gICAgICByZXR1cm4gYCR7c29ydGVkLnNsaWNlKDAsIDUpLmpvaW4oJywgJyl9LCArJHtzb3J0ZWQubGVuZ3RoIC0gNX1gO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBgJHthdHRyfWA7XG59XG5cbmV4cG9ydHMuZ3JhcGhxbEludGVncmF0aW9uID0gZ3JhcGhxbEludGVncmF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50R3JhcGhxbCA9IGluc3RydW1lbnRHcmFwaHFsO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Z3JhcGhxbC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationHapi = __webpack_require__(/*! @opentelemetry/instrumentation-hapi */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-hapi@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-hapi/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../../debug-build.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\nconst INTEGRATION_NAME = 'Hapi';\n\nconst instrumentHapi = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationHapi.HapiInstrumentation());\n\nconst _hapiIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentHapi();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Hapi](https://hapi.dev/).\n *\n * If you also want to capture errors, you need to call `setupHapiErrorHandler(server)` after you set up your server.\n *\n * For more information, see the [hapi documentation](https://docs.sentry.io/platforms/javascript/guides/hapi/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.hapiIntegration()],\n * })\n * ```\n */\nconst hapiIntegration = core.defineIntegration(_hapiIntegration);\n\nfunction isErrorEvent(event) {\n return !!(event && typeof event === 'object' && 'error' in event && event.error);\n}\n\nfunction sendErrorToSentry(errorData) {\n core.captureException(errorData, {\n mechanism: {\n type: 'auto.function.hapi',\n handled: false,\n },\n });\n}\n\nconst hapiErrorPlugin = {\n name: 'SentryHapiErrorPlugin',\n version: core.SDK_VERSION,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n register: async function (serverArg) {\n const server = serverArg ;\n\n server.events.on({ name: 'request', channels: ['error'] }, (request, event) => {\n if (core.getIsolationScope() !== core.getDefaultIsolationScope()) {\n const route = request.route;\n if (route.path) {\n core.getIsolationScope().setTransactionName(`${route.method.toUpperCase()} ${route.path}`);\n }\n } else {\n debugBuild.DEBUG_BUILD &&\n core.debug.warn('Isolation scope is still the default isolation scope - skipping setting transactionName');\n }\n\n if (isErrorEvent(event)) {\n sendErrorToSentry(event.error);\n }\n });\n },\n};\n\n/**\n * Add a Hapi plugin to capture errors to Sentry.\n *\n * @param server The Hapi server to attach the error handler to\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const Hapi = require('@hapi/hapi');\n *\n * const init = async () => {\n * const server = Hapi.server();\n *\n * // all your routes here\n *\n * await Sentry.setupHapiErrorHandler(server);\n *\n * await server.start();\n * };\n * ```\n */\nasync function setupHapiErrorHandler(server) {\n await server.register(hapiErrorPlugin);\n\n // Sadly, middleware spans do not go through `requestHook`, so we handle those here\n // We register this hook in this method, because if we register it in the integration `setup`,\n // it would always run even for users that are not even using hapi\n const client = core.getClient();\n if (client) {\n client.on('spanStart', span => {\n addHapiSpanAttributes(span);\n });\n }\n\n nodeCore.ensureIsWrapped(server.register, 'hapi');\n}\n\nfunction addHapiSpanAttributes(span) {\n const attributes = core.spanToJSON(span).data;\n\n // this is one of: router, plugin, server.ext\n const type = attributes['hapi.type'];\n\n // If this is already set, or we have no Hapi span, no need to process again...\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.hapi',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.hapi`,\n });\n}\n\nexports.hapiErrorPlugin = hapiErrorPlugin;\nexports.hapiIntegration = hapiIntegration;\nexports.instrumentHapi = instrumentHapi;\nexports.setupHapiErrorHandler = setupHapiErrorHandler;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaGFwaS9pbmRleC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSw0QkFBNEIsbUJBQU8sQ0FBQywrTUFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxtSUFBeUI7O0FBRXBEOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHVCQUF1QixzQ0FBc0M7QUFDN0Q7QUFDQTtBQUNBO0FBQ0EseURBQXlELDRCQUE0QixFQUFFLFdBQVc7QUFDbEc7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNENBQTRDLEtBQUs7QUFDakQsR0FBRztBQUNIOztBQUVBLHVCQUF1QjtBQUN2Qix1QkFBdUI7QUFDdkIsc0JBQXNCO0FBQ3RCLDZCQUE2QjtBQUM3QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9oYXBpL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25IYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWhhcGknKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi8uLi8uLi9kZWJ1Zy1idWlsZC5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0hhcGknO1xuXG5jb25zdCBpbnN0cnVtZW50SGFwaSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkhhcGkuSGFwaUluc3RydW1lbnRhdGlvbigpKTtcblxuY29uc3QgX2hhcGlJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50SGFwaSgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIFtIYXBpXShodHRwczovL2hhcGkuZGV2LykuXG4gKlxuICogSWYgeW91IGFsc28gd2FudCB0byBjYXB0dXJlIGVycm9ycywgeW91IG5lZWQgdG8gY2FsbCBgc2V0dXBIYXBpRXJyb3JIYW5kbGVyKHNlcnZlcilgIGFmdGVyIHlvdSBzZXQgdXAgeW91ciBzZXJ2ZXIuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2hhcGkgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvaGFwaS8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5oYXBpSW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGhhcGlJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2hhcGlJbnRlZ3JhdGlvbik7XG5cbmZ1bmN0aW9uIGlzRXJyb3JFdmVudChldmVudCkge1xuICByZXR1cm4gISEoZXZlbnQgJiYgdHlwZW9mIGV2ZW50ID09PSAnb2JqZWN0JyAmJiAnZXJyb3InIGluIGV2ZW50ICYmIGV2ZW50LmVycm9yKTtcbn1cblxuZnVuY3Rpb24gc2VuZEVycm9yVG9TZW50cnkoZXJyb3JEYXRhKSB7XG4gIGNvcmUuY2FwdHVyZUV4Y2VwdGlvbihlcnJvckRhdGEsIHtcbiAgICBtZWNoYW5pc206IHtcbiAgICAgIHR5cGU6ICdhdXRvLmZ1bmN0aW9uLmhhcGknLFxuICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgfSxcbiAgfSk7XG59XG5cbmNvbnN0IGhhcGlFcnJvclBsdWdpbiA9IHtcbiAgbmFtZTogJ1NlbnRyeUhhcGlFcnJvclBsdWdpbicsXG4gIHZlcnNpb246IGNvcmUuU0RLX1ZFUlNJT04sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHJlZ2lzdGVyOiBhc3luYyBmdW5jdGlvbiAoc2VydmVyQXJnKSB7XG4gICAgY29uc3Qgc2VydmVyID0gc2VydmVyQXJnIDtcblxuICAgIHNlcnZlci5ldmVudHMub24oeyBuYW1lOiAncmVxdWVzdCcsIGNoYW5uZWxzOiBbJ2Vycm9yJ10gfSwgKHJlcXVlc3QsIGV2ZW50KSA9PiB7XG4gICAgICBpZiAoY29yZS5nZXRJc29sYXRpb25TY29wZSgpICE9PSBjb3JlLmdldERlZmF1bHRJc29sYXRpb25TY29wZSgpKSB7XG4gICAgICAgIGNvbnN0IHJvdXRlID0gcmVxdWVzdC5yb3V0ZTtcbiAgICAgICAgaWYgKHJvdXRlLnBhdGgpIHtcbiAgICAgICAgICBjb3JlLmdldElzb2xhdGlvblNjb3BlKCkuc2V0VHJhbnNhY3Rpb25OYW1lKGAke3JvdXRlLm1ldGhvZC50b1VwcGVyQ2FzZSgpfSAke3JvdXRlLnBhdGh9YCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRlYnVnQnVpbGQuREVCVUdfQlVJTEQgJiZcbiAgICAgICAgICBjb3JlLmRlYnVnLndhcm4oJ0lzb2xhdGlvbiBzY29wZSBpcyBzdGlsbCB0aGUgZGVmYXVsdCBpc29sYXRpb24gc2NvcGUgLSBza2lwcGluZyBzZXR0aW5nIHRyYW5zYWN0aW9uTmFtZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNFcnJvckV2ZW50KGV2ZW50KSkge1xuICAgICAgICBzZW5kRXJyb3JUb1NlbnRyeShldmVudC5lcnJvcik7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sXG59O1xuXG4vKipcbiAqIEFkZCBhIEhhcGkgcGx1Z2luIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gc2VydmVyIFRoZSBIYXBpIHNlcnZlciB0byBhdHRhY2ggdGhlIGVycm9yIGhhbmRsZXIgdG9cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKiBjb25zdCBIYXBpID0gcmVxdWlyZSgnQGhhcGkvaGFwaScpO1xuICpcbiAqIGNvbnN0IGluaXQgPSBhc3luYyAoKSA9PiB7XG4gKiAgIGNvbnN0IHNlcnZlciA9IEhhcGkuc2VydmVyKCk7XG4gKlxuICogICAvLyBhbGwgeW91ciByb3V0ZXMgaGVyZVxuICpcbiAqICAgYXdhaXQgU2VudHJ5LnNldHVwSGFwaUVycm9ySGFuZGxlcihzZXJ2ZXIpO1xuICpcbiAqICAgYXdhaXQgc2VydmVyLnN0YXJ0KCk7XG4gKiB9O1xuICogYGBgXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHNldHVwSGFwaUVycm9ySGFuZGxlcihzZXJ2ZXIpIHtcbiAgYXdhaXQgc2VydmVyLnJlZ2lzdGVyKGhhcGlFcnJvclBsdWdpbik7XG5cbiAgLy8gU2FkbHksIG1pZGRsZXdhcmUgc3BhbnMgZG8gbm90IGdvIHRocm91Z2ggYHJlcXVlc3RIb29rYCwgc28gd2UgaGFuZGxlIHRob3NlIGhlcmVcbiAgLy8gV2UgcmVnaXN0ZXIgdGhpcyBob29rIGluIHRoaXMgbWV0aG9kLCBiZWNhdXNlIGlmIHdlIHJlZ2lzdGVyIGl0IGluIHRoZSBpbnRlZ3JhdGlvbiBgc2V0dXBgLFxuICAvLyBpdCB3b3VsZCBhbHdheXMgcnVuIGV2ZW4gZm9yIHVzZXJzIHRoYXQgYXJlIG5vdCBldmVuIHVzaW5nIGhhcGlcbiAgY29uc3QgY2xpZW50ID0gY29yZS5nZXRDbGllbnQoKTtcbiAgaWYgKGNsaWVudCkge1xuICAgIGNsaWVudC5vbignc3BhblN0YXJ0Jywgc3BhbiA9PiB7XG4gICAgICBhZGRIYXBpU3BhbkF0dHJpYnV0ZXMoc3Bhbik7XG4gICAgfSk7XG4gIH1cblxuICBub2RlQ29yZS5lbnN1cmVJc1dyYXBwZWQoc2VydmVyLnJlZ2lzdGVyLCAnaGFwaScpO1xufVxuXG5mdW5jdGlvbiBhZGRIYXBpU3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBhdHRyaWJ1dGVzID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGE7XG5cbiAgLy8gdGhpcyBpcyBvbmUgb2Y6IHJvdXRlciwgcGx1Z2luLCBzZXJ2ZXIuZXh0XG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydoYXBpLnR5cGUnXTtcblxuICAvLyBJZiB0aGlzIGlzIGFscmVhZHkgc2V0LCBvciB3ZSBoYXZlIG5vIEhhcGkgc3Bhbiwgbm8gbmVlZCB0byBwcm9jZXNzIGFnYWluLi4uXG4gIGlmIChhdHRyaWJ1dGVzW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF0gfHwgIXR5cGUpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBzcGFuLnNldEF0dHJpYnV0ZXMoe1xuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1JJR0lOXTogJ2F1dG8uaHR0cC5vdGVsLmhhcGknLFxuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdOiBgJHt0eXBlfS5oYXBpYCxcbiAgfSk7XG59XG5cbmV4cG9ydHMuaGFwaUVycm9yUGx1Z2luID0gaGFwaUVycm9yUGx1Z2luO1xuZXhwb3J0cy5oYXBpSW50ZWdyYXRpb24gPSBoYXBpSW50ZWdyYXRpb247XG5leHBvcnRzLmluc3RydW1lbnRIYXBpID0gaW5zdHJ1bWVudEhhcGk7XG5leHBvcnRzLnNldHVwSGFwaUVycm9ySGFuZGxlciA9IHNldHVwSGFwaUVycm9ySGFuZGxlcjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js ***!
\****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst AttributeNames = {\n HONO_TYPE: 'hono.type',\n HONO_NAME: 'hono.name',\n} ;\n\nconst HonoTypes = {\n MIDDLEWARE: 'middleware',\n REQUEST_HANDLER: 'request_handler',\n} ;\n\nexports.AttributeNames = AttributeNames;\nexports.HonoTypes = HonoTypes;\n//# sourceMappingURL=constants.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9jb25zdGFudHMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEU7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0JBQXNCO0FBQ3RCLGlCQUFpQjtBQUNqQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9ob25vL2NvbnN0YW50cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgQXR0cmlidXRlTmFtZXMgPSB7XG4gIEhPTk9fVFlQRTogJ2hvbm8udHlwZScsXG4gIEhPTk9fTkFNRTogJ2hvbm8ubmFtZScsXG59IDtcblxuY29uc3QgSG9ub1R5cGVzID0ge1xuICBNSURETEVXQVJFOiAnbWlkZGxld2FyZScsXG4gIFJFUVVFU1RfSEFORExFUjogJ3JlcXVlc3RfaGFuZGxlcicsXG59IDtcblxuZXhwb3J0cy5BdHRyaWJ1dGVOYW1lcyA9IEF0dHJpYnV0ZU5hbWVzO1xuZXhwb3J0cy5Ib25vVHlwZXMgPSBIb25vVHlwZXM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1jb25zdGFudHMuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../../debug-build.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js\");\n\nconst INTEGRATION_NAME = 'Hono';\n\nfunction addHonoSpanAttributes(span) {\n const attributes = core.spanToJSON(span).data;\n const type = attributes[constants.AttributeNames.HONO_TYPE];\n if (attributes[core.SEMANTIC_ATTRIBUTE_SENTRY_OP] || !type) {\n return;\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.http.otel.hono',\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: `${type}.hono`,\n });\n\n const name = attributes[constants.AttributeNames.HONO_NAME];\n if (typeof name === 'string') {\n span.updateName(name);\n }\n\n if (core.getIsolationScope() === core.getDefaultIsolationScope()) {\n debugBuild.DEBUG_BUILD && core.debug.warn('Isolation scope is default isolation scope - skipping setting transactionName');\n return;\n }\n\n const route = attributes[semanticConventions.ATTR_HTTP_ROUTE];\n const method = attributes[semanticConventions.ATTR_HTTP_REQUEST_METHOD];\n if (typeof route === 'string' && typeof method === 'string') {\n core.getIsolationScope().setTransactionName(`${method} ${route}`);\n }\n}\n\nconst instrumentHono = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentation.HonoInstrumentation({\n responseHook: span => {\n addHonoSpanAttributes(span);\n },\n }),\n);\n\nconst _honoIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentHono();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Hono](https://hono.dev/).\n *\n * If you also want to capture errors, you need to call `setupHonoErrorHandler(app)` after you set up your Hono server.\n *\n * For more information, see the [hono documentation](https://docs.sentry.io/platforms/javascript/guides/hono/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.honoIntegration()],\n * })\n * ```\n */\nconst honoIntegration = core.defineIntegration(_honoIntegration);\n\nfunction honoRequestHandler() {\n return async function sentryRequestMiddleware(context, next) {\n const normalizedRequest = core.httpRequestToRequestData(context.req);\n core.getIsolationScope().setSDKProcessingMetadata({ normalizedRequest });\n await next();\n };\n}\n\nfunction defaultShouldHandleError(context) {\n const statusCode = context.res.status;\n return statusCode >= 500;\n}\n\nfunction honoErrorHandler(options) {\n return async function sentryErrorMiddleware(context, next) {\n await next();\n\n const shouldHandleError = options?.shouldHandleError || defaultShouldHandleError;\n if (shouldHandleError(context)) {\n (context.res ).sentry = core.captureException(context.error, {\n mechanism: {\n type: 'auto.middleware.hono',\n handled: false,\n },\n });\n }\n };\n}\n\n/**\n * Add a Hono error handler to capture errors to Sentry.\n *\n * @param app The Hono instances\n * @param options Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const { Hono } = require(\"hono\");\n *\n * const app = new Hono();\n *\n * Sentry.setupHonoErrorHandler(app);\n *\n * // Add your routes, etc.\n * ```\n */\nfunction setupHonoErrorHandler(\n app,\n options,\n) {\n app.use(honoRequestHandler());\n app.use(honoErrorHandler(options));\n nodeCore.ensureIsWrapped(app.use, 'hono');\n}\n\nexports.honoIntegration = honoIntegration;\nexports.instrumentHono = instrumentHono;\nexports.setupHonoErrorHandler = setupHonoErrorHandler;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbmRleC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxtSUFBeUI7QUFDcEQsa0JBQWtCLG1CQUFPLENBQUMsa0pBQWdCO0FBQzFDLHdCQUF3QixtQkFBTyxDQUFDLDhKQUFzQjs7QUFFdEQ7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSw0Q0FBNEMsS0FBSztBQUNqRCxHQUFHOztBQUVIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCxRQUFRLEVBQUUsTUFBTTtBQUNuRTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RCxtQkFBbUI7QUFDM0U7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsdUJBQXVCO0FBQ3ZCLHNCQUFzQjtBQUN0Qiw2QkFBNkI7QUFDN0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3Qgc2VtYW50aWNDb252ZW50aW9ucyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3NlbWFudGljLWNvbnZlbnRpb25zJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBkZWJ1Z0J1aWxkID0gcmVxdWlyZSgnLi4vLi4vLi4vZGVidWctYnVpbGQuanMnKTtcbmNvbnN0IGNvbnN0YW50cyA9IHJlcXVpcmUoJy4vY29uc3RhbnRzLmpzJyk7XG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCcuL2luc3RydW1lbnRhdGlvbi5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0hvbm8nO1xuXG5mdW5jdGlvbiBhZGRIb25vU3BhbkF0dHJpYnV0ZXMoc3Bhbikge1xuICBjb25zdCBhdHRyaWJ1dGVzID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGE7XG4gIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzW2NvbnN0YW50cy5BdHRyaWJ1dGVOYW1lcy5IT05PX1RZUEVdO1xuICBpZiAoYXR0cmlidXRlc1tjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1BdIHx8ICF0eXBlKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgc3Bhbi5zZXRBdHRyaWJ1dGVzKHtcbiAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09SSUdJTl06ICdhdXRvLmh0dHAub3RlbC5ob25vJyxcbiAgICBbY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfU0VOVFJZX09QXTogYCR7dHlwZX0uaG9ub2AsXG4gIH0pO1xuXG4gIGNvbnN0IG5hbWUgPSBhdHRyaWJ1dGVzW2NvbnN0YW50cy5BdHRyaWJ1dGVOYW1lcy5IT05PX05BTUVdO1xuICBpZiAodHlwZW9mIG5hbWUgPT09ICdzdHJpbmcnKSB7XG4gICAgc3Bhbi51cGRhdGVOYW1lKG5hbWUpO1xuICB9XG5cbiAgaWYgKGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKSA9PT0gY29yZS5nZXREZWZhdWx0SXNvbGF0aW9uU2NvcGUoKSkge1xuICAgIGRlYnVnQnVpbGQuREVCVUdfQlVJTEQgJiYgY29yZS5kZWJ1Zy53YXJuKCdJc29sYXRpb24gc2NvcGUgaXMgZGVmYXVsdCBpc29sYXRpb24gc2NvcGUgLSBza2lwcGluZyBzZXR0aW5nIHRyYW5zYWN0aW9uTmFtZScpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHJvdXRlID0gYXR0cmlidXRlc1tzZW1hbnRpY0NvbnZlbnRpb25zLkFUVFJfSFRUUF9ST1VURV07XG4gIGNvbnN0IG1ldGhvZCA9IGF0dHJpYnV0ZXNbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0hUVFBfUkVRVUVTVF9NRVRIT0RdO1xuICBpZiAodHlwZW9mIHJvdXRlID09PSAnc3RyaW5nJyAmJiB0eXBlb2YgbWV0aG9kID09PSAnc3RyaW5nJykge1xuICAgIGNvcmUuZ2V0SXNvbGF0aW9uU2NvcGUoKS5zZXRUcmFuc2FjdGlvbk5hbWUoYCR7bWV0aG9kfSAke3JvdXRlfWApO1xuICB9XG59XG5cbmNvbnN0IGluc3RydW1lbnRIb25vID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgKCkgPT5cbiAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkhvbm9JbnN0cnVtZW50YXRpb24oe1xuICAgICAgcmVzcG9uc2VIb29rOiBzcGFuID0+IHtcbiAgICAgICAgYWRkSG9ub1NwYW5BdHRyaWJ1dGVzKHNwYW4pO1xuICAgICAgfSxcbiAgICB9KSxcbik7XG5cbmNvbnN0IF9ob25vSW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudEhvbm8oKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciBbSG9ub10oaHR0cHM6Ly9ob25vLmRldi8pLlxuICpcbiAqIElmIHlvdSBhbHNvIHdhbnQgdG8gY2FwdHVyZSBlcnJvcnMsIHlvdSBuZWVkIHRvIGNhbGwgYHNldHVwSG9ub0Vycm9ySGFuZGxlcihhcHApYCBhZnRlciB5b3Ugc2V0IHVwIHlvdXIgSG9ubyBzZXJ2ZXIuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2hvbm8gZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvaG9uby8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5ob25vSW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGhvbm9JbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2hvbm9JbnRlZ3JhdGlvbik7XG5cbmZ1bmN0aW9uIGhvbm9SZXF1ZXN0SGFuZGxlcigpIHtcbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIHNlbnRyeVJlcXVlc3RNaWRkbGV3YXJlKGNvbnRleHQsIG5leHQpIHtcbiAgICBjb25zdCBub3JtYWxpemVkUmVxdWVzdCA9IGNvcmUuaHR0cFJlcXVlc3RUb1JlcXVlc3REYXRhKGNvbnRleHQucmVxKTtcbiAgICBjb3JlLmdldElzb2xhdGlvblNjb3BlKCkuc2V0U0RLUHJvY2Vzc2luZ01ldGFkYXRhKHsgbm9ybWFsaXplZFJlcXVlc3QgfSk7XG4gICAgYXdhaXQgbmV4dCgpO1xuICB9O1xufVxuXG5mdW5jdGlvbiBkZWZhdWx0U2hvdWxkSGFuZGxlRXJyb3IoY29udGV4dCkge1xuICBjb25zdCBzdGF0dXNDb2RlID0gY29udGV4dC5yZXMuc3RhdHVzO1xuICByZXR1cm4gc3RhdHVzQ29kZSA+PSA1MDA7XG59XG5cbmZ1bmN0aW9uIGhvbm9FcnJvckhhbmRsZXIob3B0aW9ucykge1xuICByZXR1cm4gYXN5bmMgZnVuY3Rpb24gc2VudHJ5RXJyb3JNaWRkbGV3YXJlKGNvbnRleHQsIG5leHQpIHtcbiAgICBhd2FpdCBuZXh0KCk7XG5cbiAgICBjb25zdCBzaG91bGRIYW5kbGVFcnJvciA9IG9wdGlvbnM/LnNob3VsZEhhbmRsZUVycm9yIHx8IGRlZmF1bHRTaG91bGRIYW5kbGVFcnJvcjtcbiAgICBpZiAoc2hvdWxkSGFuZGxlRXJyb3IoY29udGV4dCkpIHtcbiAgICAgIChjb250ZXh0LnJlcyApLnNlbnRyeSA9IGNvcmUuY2FwdHVyZUV4Y2VwdGlvbihjb250ZXh0LmVycm9yLCB7XG4gICAgICAgIG1lY2hhbmlzbToge1xuICAgICAgICAgIHR5cGU6ICdhdXRvLm1pZGRsZXdhcmUuaG9ubycsXG4gICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG5cbi8qKlxuICogQWRkIGEgSG9ubyBlcnJvciBoYW5kbGVyIHRvIGNhcHR1cmUgZXJyb3JzIHRvIFNlbnRyeS5cbiAqXG4gKiBAcGFyYW0gYXBwIFRoZSBIb25vIGluc3RhbmNlc1xuICogQHBhcmFtIG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgaGFuZGxlclxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqIGNvbnN0IHsgSG9ubyB9ID0gcmVxdWlyZShcImhvbm9cIik7XG4gKlxuICogY29uc3QgYXBwID0gbmV3IEhvbm8oKTtcbiAqXG4gKiBTZW50cnkuc2V0dXBIb25vRXJyb3JIYW5kbGVyKGFwcCk7XG4gKlxuICogLy8gQWRkIHlvdXIgcm91dGVzLCBldGMuXG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gc2V0dXBIb25vRXJyb3JIYW5kbGVyKFxuICBhcHAsXG4gIG9wdGlvbnMsXG4pIHtcbiAgYXBwLnVzZShob25vUmVxdWVzdEhhbmRsZXIoKSk7XG4gIGFwcC51c2UoaG9ub0Vycm9ySGFuZGxlcihvcHRpb25zKSk7XG4gIG5vZGVDb3JlLmVuc3VyZUlzV3JhcHBlZChhcHAudXNlLCAnaG9ubycpO1xufVxuXG5leHBvcnRzLmhvbm9JbnRlZ3JhdGlvbiA9IGhvbm9JbnRlZ3JhdGlvbjtcbmV4cG9ydHMuaW5zdHJ1bWVudEhvbm8gPSBpbnN0cnVtZW50SG9ubztcbmV4cG9ydHMuc2V0dXBIb25vRXJyb3JIYW5kbGVyID0gc2V0dXBIb25vRXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js":
/*!**********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js ***!
\**********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/constants.js\");\n\nconst PACKAGE_NAME = '@sentry/instrumentation-hono';\nconst PACKAGE_VERSION = '0.0.1';\n\n/**\n * Hono instrumentation for OpenTelemetry\n */\nclass HonoInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super(PACKAGE_NAME, PACKAGE_VERSION, config);\n }\n\n /**\n * Initialize the instrumentation.\n */\n init() {\n return [\n new instrumentation.InstrumentationNodeModuleDefinition('hono', ['>=4.0.0 <5'], moduleExports => this._patch(moduleExports)),\n ];\n }\n\n /**\n * Patches the module exports to instrument Hono.\n */\n _patch(moduleExports) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n class WrappedHono extends moduleExports.Hono {\n constructor(...args) {\n super(...args);\n\n instrumentation._wrap(this, 'get', instrumentation._patchHandler());\n instrumentation._wrap(this, 'post', instrumentation._patchHandler());\n instrumentation._wrap(this, 'put', instrumentation._patchHandler());\n instrumentation._wrap(this, 'delete', instrumentation._patchHandler());\n instrumentation._wrap(this, 'options', instrumentation._patchHandler());\n instrumentation._wrap(this, 'patch', instrumentation._patchHandler());\n instrumentation._wrap(this, 'all', instrumentation._patchHandler());\n instrumentation._wrap(this, 'on', instrumentation._patchOnHandler());\n instrumentation._wrap(this, 'use', instrumentation._patchMiddlewareHandler());\n }\n }\n\n try {\n moduleExports.Hono = WrappedHono;\n } catch {\n // This is a workaround for environments where direct assignment is not allowed.\n return { ...moduleExports, Hono: WrappedHono };\n }\n\n return moduleExports;\n }\n\n /**\n * Patches the route handler to instrument it.\n */\n _patchHandler() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function (original) {\n return function wrappedHandler( ...args) {\n if (typeof args[0] === 'string') {\n const path = args[0];\n if (args.length === 1) {\n return original.apply(this, [path]);\n }\n\n const handlers = args.slice(1);\n return original.apply(this, [\n path,\n ...handlers.map(handler => instrumentation._wrapHandler(handler )),\n ]);\n }\n\n return original.apply(\n this,\n args.map(handler => instrumentation._wrapHandler(handler )),\n );\n };\n };\n }\n\n /**\n * Patches the 'on' handler to instrument it.\n */\n _patchOnHandler() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function (original) {\n return function wrappedHandler( ...args) {\n const handlers = args.slice(2);\n return original.apply(this, [\n ...args.slice(0, 2),\n ...handlers.map(handler => instrumentation._wrapHandler(handler )),\n ]);\n };\n };\n }\n\n /**\n * Patches the middleware handler to instrument it.\n */\n _patchMiddlewareHandler() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function (original) {\n return function wrappedHandler( ...args) {\n if (typeof args[0] === 'string') {\n const path = args[0];\n if (args.length === 1) {\n return original.apply(this, [path]);\n }\n\n const handlers = args.slice(1);\n return original.apply(this, [\n path,\n ...handlers.map(handler => instrumentation._wrapHandler(handler )),\n ]);\n }\n\n return original.apply(\n this,\n args.map(handler => instrumentation._wrapHandler(handler )),\n );\n };\n };\n }\n\n /**\n * Wraps a handler or middleware handler to apply instrumentation.\n */\n _wrapHandler(handler) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const instrumentation = this;\n\n return function ( c, next) {\n if (!instrumentation.isEnabled()) {\n return handler.apply(this, [c, next]);\n }\n\n const path = c.req.path;\n const span = instrumentation.tracer.startSpan(path);\n\n return api.context.with(api.trace.setSpan(api.context.active(), span), () => {\n return instrumentation._safeExecute(\n () => {\n const result = handler.apply(this, [c, next]);\n if (core.isThenable(result)) {\n return result.then(result => {\n const type = instrumentation._determineHandlerType(result);\n span.setAttributes({\n [constants.AttributeNames.HONO_TYPE]: type,\n [constants.AttributeNames.HONO_NAME]: type === constants.HonoTypes.REQUEST_HANDLER ? path : handler.name || 'anonymous',\n });\n instrumentation.getConfig().responseHook?.(span);\n return result;\n });\n } else {\n const type = instrumentation._determineHandlerType(result);\n span.setAttributes({\n [constants.AttributeNames.HONO_TYPE]: type,\n [constants.AttributeNames.HONO_NAME]: type === constants.HonoTypes.REQUEST_HANDLER ? path : handler.name || 'anonymous',\n });\n instrumentation.getConfig().responseHook?.(span);\n return result;\n }\n },\n () => span.end(),\n error => {\n instrumentation._handleError(span, error);\n span.end();\n },\n );\n });\n };\n }\n\n /**\n * Safely executes a function and handles errors.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _safeExecute(execute, onSuccess, onFailure) {\n try {\n const result = execute();\n\n if (core.isThenable(result)) {\n result.then(\n () => onSuccess(),\n (error) => onFailure(error),\n );\n } else {\n onSuccess();\n }\n\n return result;\n } catch (error) {\n onFailure(error);\n throw error;\n }\n }\n\n /**\n * Determines the handler type based on the result.\n * @param result\n * @private\n */\n _determineHandlerType(result) {\n return result === undefined ? constants.HonoTypes.MIDDLEWARE : constants.HonoTypes.REQUEST_HANDLER;\n }\n\n /**\n * Handles errors by setting the span status and recording the exception.\n */\n _handleError(span, error) {\n if (error instanceof Error) {\n span.setStatus({\n code: api.SpanStatusCode.ERROR,\n message: error.message,\n });\n span.recordException(error);\n }\n }\n}\n\nexports.HonoInstrumentation = HonoInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbnN0cnVtZW50YXRpb24uanMiLCJtYXBwaW5ncyI6IkFBQUEsQ0FBQyxvREFBb0QseUNBQXlDLDBDQUEwQyw4Q0FBOEMsb0RBQW9ELG1EQUFtRCxxREFBcUQsaUJBQWlCOztBQUVuVyxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsa0JBQWtCLG1CQUFPLENBQUMsa0pBQWdCOztBQUUxQztBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBLGVBQWU7QUFDZjs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBLGVBQWU7QUFDZixjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlO0FBQ2Y7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSwyQkFBMkI7QUFDM0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaG9uby9pbnN0cnVtZW50YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZXNUdW5uZWxQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJTRU5UUllfUkVMRUFTRVwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeUJhc2VQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5TmV4dEpzVmVyc2lvblwiXSA9IFwiMTYuMS42XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlRnJhbWVzRGlzdERpclwiXSA9IFwiLm5leHRcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVZlcmNlbENyb25zQ29uZmlnXCJdID0gdW5kZWZpbmVkO09iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBhcGkgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9hcGknKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3QgY29uc3RhbnRzID0gcmVxdWlyZSgnLi9jb25zdGFudHMuanMnKTtcblxuY29uc3QgUEFDS0FHRV9OQU1FID0gJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLWhvbm8nO1xuY29uc3QgUEFDS0FHRV9WRVJTSU9OID0gJzAuMC4xJztcblxuLyoqXG4gKiBIb25vIGluc3RydW1lbnRhdGlvbiBmb3IgT3BlblRlbGVtZXRyeVxuICovXG5jbGFzcyBIb25vSW5zdHJ1bWVudGF0aW9uIGV4dGVuZHMgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbkJhc2Uge1xuICAgY29uc3RydWN0b3IoY29uZmlnID0ge30pIHtcbiAgICBzdXBlcihQQUNLQUdFX05BTUUsIFBBQ0tBR0VfVkVSU0lPTiwgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSBpbnN0cnVtZW50YXRpb24uXG4gICAqL1xuICAgaW5pdCgpIHtcbiAgICByZXR1cm4gW1xuICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRGVmaW5pdGlvbignaG9ubycsIFsnPj00LjAuMCA8NSddLCBtb2R1bGVFeHBvcnRzID0+IHRoaXMuX3BhdGNoKG1vZHVsZUV4cG9ydHMpKSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgdGhlIG1vZHVsZSBleHBvcnRzIHRvIGluc3RydW1lbnQgSG9uby5cbiAgICovXG4gICBfcGF0Y2gobW9kdWxlRXhwb3J0cykge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICBjbGFzcyBXcmFwcGVkSG9ubyBleHRlbmRzIG1vZHVsZUV4cG9ydHMuSG9ubyB7XG4gICAgICAgY29uc3RydWN0b3IoLi4uYXJncykge1xuICAgICAgICBzdXBlciguLi5hcmdzKTtcblxuICAgICAgICBpbnN0cnVtZW50YXRpb24uX3dyYXAodGhpcywgJ2dldCcsIGluc3RydW1lbnRhdGlvbi5fcGF0Y2hIYW5kbGVyKCkpO1xuICAgICAgICBpbnN0cnVtZW50YXRpb24uX3dyYXAodGhpcywgJ3Bvc3QnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdwdXQnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdkZWxldGUnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdvcHRpb25zJywgaW5zdHJ1bWVudGF0aW9uLl9wYXRjaEhhbmRsZXIoKSk7XG4gICAgICAgIGluc3RydW1lbnRhdGlvbi5fd3JhcCh0aGlzLCAncGF0Y2gnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdhbGwnLCBpbnN0cnVtZW50YXRpb24uX3BhdGNoSGFuZGxlcigpKTtcbiAgICAgICAgaW5zdHJ1bWVudGF0aW9uLl93cmFwKHRoaXMsICdvbicsIGluc3RydW1lbnRhdGlvbi5fcGF0Y2hPbkhhbmRsZXIoKSk7XG4gICAgICAgIGluc3RydW1lbnRhdGlvbi5fd3JhcCh0aGlzLCAndXNlJywgaW5zdHJ1bWVudGF0aW9uLl9wYXRjaE1pZGRsZXdhcmVIYW5kbGVyKCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBtb2R1bGVFeHBvcnRzLkhvbm8gPSBXcmFwcGVkSG9ubztcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIFRoaXMgaXMgYSB3b3JrYXJvdW5kIGZvciBlbnZpcm9ubWVudHMgd2hlcmUgZGlyZWN0IGFzc2lnbm1lbnQgaXMgbm90IGFsbG93ZWQuXG4gICAgICByZXR1cm4geyAuLi5tb2R1bGVFeHBvcnRzLCBIb25vOiBXcmFwcGVkSG9ubyB9O1xuICAgIH1cblxuICAgIHJldHVybiBtb2R1bGVFeHBvcnRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgdGhlIHJvdXRlIGhhbmRsZXIgdG8gaW5zdHJ1bWVudCBpdC5cbiAgICovXG4gICBfcGF0Y2hIYW5kbGVyKCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gd3JhcHBlZEhhbmRsZXIoIC4uLmFyZ3MpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIGNvbnN0IHBhdGggPSBhcmdzWzBdO1xuICAgICAgICAgIGlmIChhcmdzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KHRoaXMsIFtwYXRoXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgaGFuZGxlcnMgPSBhcmdzLnNsaWNlKDEpO1xuICAgICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseSh0aGlzLCBbXG4gICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgLi4uaGFuZGxlcnMubWFwKGhhbmRsZXIgPT4gaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihoYW5kbGVyICkpLFxuICAgICAgICAgIF0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsLmFwcGx5KFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICAgYXJncy5tYXAoaGFuZGxlciA9PiBpbnN0cnVtZW50YXRpb24uX3dyYXBIYW5kbGVyKGhhbmRsZXIgKSksXG4gICAgICAgICk7XG4gICAgICB9O1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUGF0Y2hlcyB0aGUgJ29uJyBoYW5kbGVyIHRvIGluc3RydW1lbnQgaXQuXG4gICAqL1xuICAgX3BhdGNoT25IYW5kbGVyKCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdGhpcy1hbGlhc1xuICAgIGNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHRoaXM7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gKG9yaWdpbmFsKSB7XG4gICAgICByZXR1cm4gZnVuY3Rpb24gd3JhcHBlZEhhbmRsZXIoIC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgaGFuZGxlcnMgPSBhcmdzLnNsaWNlKDIpO1xuICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgW1xuICAgICAgICAgIC4uLmFyZ3Muc2xpY2UoMCwgMiksXG4gICAgICAgICAgLi4uaGFuZGxlcnMubWFwKGhhbmRsZXIgPT4gaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihoYW5kbGVyICkpLFxuICAgICAgICBdKTtcbiAgICAgIH07XG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXRjaGVzIHRoZSBtaWRkbGV3YXJlIGhhbmRsZXIgdG8gaW5zdHJ1bWVudCBpdC5cbiAgICovXG4gICBfcGF0Y2hNaWRkbGV3YXJlSGFuZGxlcigpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXRoaXMtYWxpYXNcbiAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSB0aGlzO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIChvcmlnaW5hbCkge1xuICAgICAgcmV0dXJuIGZ1bmN0aW9uIHdyYXBwZWRIYW5kbGVyKCAuLi5hcmdzKSB7XG4gICAgICAgIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICBjb25zdCBwYXRoID0gYXJnc1swXTtcbiAgICAgICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseSh0aGlzLCBbcGF0aF0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGhhbmRsZXJzID0gYXJncy5zbGljZSgxKTtcbiAgICAgICAgICByZXR1cm4gb3JpZ2luYWwuYXBwbHkodGhpcywgW1xuICAgICAgICAgICAgcGF0aCxcbiAgICAgICAgICAgIC4uLmhhbmRsZXJzLm1hcChoYW5kbGVyID0+IGluc3RydW1lbnRhdGlvbi5fd3JhcEhhbmRsZXIoaGFuZGxlciApKSxcbiAgICAgICAgICBdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBvcmlnaW5hbC5hcHBseShcbiAgICAgICAgICB0aGlzLFxuICAgICAgICAgIGFyZ3MubWFwKGhhbmRsZXIgPT4gaW5zdHJ1bWVudGF0aW9uLl93cmFwSGFuZGxlcihoYW5kbGVyICkpLFxuICAgICAgICApO1xuICAgICAgfTtcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFdyYXBzIGEgaGFuZGxlciBvciBtaWRkbGV3YXJlIGhhbmRsZXIgdG8gYXBwbHkgaW5zdHJ1bWVudGF0aW9uLlxuICAgKi9cbiAgIF93cmFwSGFuZGxlcihoYW5kbGVyKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzXG4gICAgY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gdGhpcztcblxuICAgIHJldHVybiBmdW5jdGlvbiAoIGMsIG5leHQpIHtcbiAgICAgIGlmICghaW5zdHJ1bWVudGF0aW9uLmlzRW5hYmxlZCgpKSB7XG4gICAgICAgIHJldHVybiBoYW5kbGVyLmFwcGx5KHRoaXMsIFtjLCBuZXh0XSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBhdGggPSBjLnJlcS5wYXRoO1xuICAgICAgY29uc3Qgc3BhbiA9IGluc3RydW1lbnRhdGlvbi50cmFjZXIuc3RhcnRTcGFuKHBhdGgpO1xuXG4gICAgICByZXR1cm4gYXBpLmNvbnRleHQud2l0aChhcGkudHJhY2Uuc2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSwgc3BhbiksICgpID0+IHtcbiAgICAgICAgcmV0dXJuIGluc3RydW1lbnRhdGlvbi5fc2FmZUV4ZWN1dGUoXG4gICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gaGFuZGxlci5hcHBseSh0aGlzLCBbYywgbmV4dF0pO1xuICAgICAgICAgICAgaWYgKGNvcmUuaXNUaGVuYWJsZShyZXN1bHQpKSB7XG4gICAgICAgICAgICAgIHJldHVybiByZXN1bHQudGhlbihyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSBpbnN0cnVtZW50YXRpb24uX2RldGVybWluZUhhbmRsZXJUeXBlKHJlc3VsdCk7XG4gICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICAgIFtjb25zdGFudHMuQXR0cmlidXRlTmFtZXMuSE9OT19UWVBFXTogdHlwZSxcbiAgICAgICAgICAgICAgICAgIFtjb25zdGFudHMuQXR0cmlidXRlTmFtZXMuSE9OT19OQU1FXTogdHlwZSA9PT0gY29uc3RhbnRzLkhvbm9UeXBlcy5SRVFVRVNUX0hBTkRMRVIgPyBwYXRoIDogaGFuZGxlci5uYW1lIHx8ICdhbm9ueW1vdXMnLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RydW1lbnRhdGlvbi5nZXRDb25maWcoKS5yZXNwb25zZUhvb2s/LihzcGFuKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSBpbnN0cnVtZW50YXRpb24uX2RldGVybWluZUhhbmRsZXJUeXBlKHJlc3VsdCk7XG4gICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgICAgICAgICAgICAgW2NvbnN0YW50cy5BdHRyaWJ1dGVOYW1lcy5IT05PX1RZUEVdOiB0eXBlLFxuICAgICAgICAgICAgICAgIFtjb25zdGFudHMuQXR0cmlidXRlTmFtZXMuSE9OT19OQU1FXTogdHlwZSA9PT0gY29uc3RhbnRzLkhvbm9UeXBlcy5SRVFVRVNUX0hBTkRMRVIgPyBwYXRoIDogaGFuZGxlci5uYW1lIHx8ICdhbm9ueW1vdXMnLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgaW5zdHJ1bWVudGF0aW9uLmdldENvbmZpZygpLnJlc3BvbnNlSG9vaz8uKHNwYW4pO1xuICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgKCkgPT4gc3Bhbi5lbmQoKSxcbiAgICAgICAgICBlcnJvciA9PiB7XG4gICAgICAgICAgICBpbnN0cnVtZW50YXRpb24uX2hhbmRsZUVycm9yKHNwYW4sIGVycm9yKTtcbiAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogU2FmZWx5IGV4ZWN1dGVzIGEgZnVuY3Rpb24gYW5kIGhhbmRsZXMgZXJyb3JzLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgIF9zYWZlRXhlY3V0ZShleGVjdXRlLCBvblN1Y2Nlc3MsIG9uRmFpbHVyZSkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBleGVjdXRlKCk7XG5cbiAgICAgIGlmIChjb3JlLmlzVGhlbmFibGUocmVzdWx0KSkge1xuICAgICAgICByZXN1bHQudGhlbihcbiAgICAgICAgICAoKSA9PiBvblN1Y2Nlc3MoKSxcbiAgICAgICAgICAoZXJyb3IpID0+IG9uRmFpbHVyZShlcnJvciksXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvblN1Y2Nlc3MoKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgb25GYWlsdXJlKGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHRoZSBoYW5kbGVyIHR5cGUgYmFzZWQgb24gdGhlIHJlc3VsdC5cbiAgICogQHBhcmFtIHJlc3VsdFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgIF9kZXRlcm1pbmVIYW5kbGVyVHlwZShyZXN1bHQpIHtcbiAgICByZXR1cm4gcmVzdWx0ID09PSB1bmRlZmluZWQgPyBjb25zdGFudHMuSG9ub1R5cGVzLk1JRERMRVdBUkUgOiBjb25zdGFudHMuSG9ub1R5cGVzLlJFUVVFU1RfSEFORExFUjtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGVycm9ycyBieSBzZXR0aW5nIHRoZSBzcGFuIHN0YXR1cyBhbmQgcmVjb3JkaW5nIHRoZSBleGNlcHRpb24uXG4gICAqL1xuICAgX2hhbmRsZUVycm9yKHNwYW4sIGVycm9yKSB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHNwYW4uc2V0U3RhdHVzKHtcbiAgICAgICAgY29kZTogYXBpLlNwYW5TdGF0dXNDb2RlLkVSUk9SLFxuICAgICAgICBtZXNzYWdlOiBlcnJvci5tZXNzYWdlLFxuICAgICAgfSk7XG4gICAgICBzcGFuLnJlY29yZEV4Y2VwdGlvbihlcnJvcik7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydHMuSG9ub0luc3RydW1lbnRhdGlvbiA9IEhvbm9JbnN0cnVtZW50YXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst http = __webpack_require__(/*! ../http.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\");\nconst amqplib = __webpack_require__(/*! ./amqplib.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/amqplib.js\");\nconst index$6 = __webpack_require__(/*! ./anthropic-ai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/anthropic-ai/index.js\");\nconst connect = __webpack_require__(/*! ./connect.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/connect.js\");\nconst express = __webpack_require__(/*! ./express.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/express.js\");\nconst index = __webpack_require__(/*! ./fastify/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/fastify/index.js\");\nconst firebase = __webpack_require__(/*! ./firebase/firebase.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/firebase/firebase.js\");\nconst genericPool = __webpack_require__(/*! ./genericPool.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/genericPool.js\");\nconst index$7 = __webpack_require__(/*! ./google-genai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/google-genai/index.js\");\nconst graphql = __webpack_require__(/*! ./graphql.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/graphql.js\");\nconst index$1 = __webpack_require__(/*! ./hapi/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hapi/index.js\");\nconst index$2 = __webpack_require__(/*! ./hono/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/hono/index.js\");\nconst kafka = __webpack_require__(/*! ./kafka.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js\");\nconst koa = __webpack_require__(/*! ./koa.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js\");\nconst index$3 = __webpack_require__(/*! ./langchain/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js\");\nconst index$8 = __webpack_require__(/*! ./langgraph/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js\");\nconst lrumemoizer = __webpack_require__(/*! ./lrumemoizer.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js\");\nconst mongo = __webpack_require__(/*! ./mongo.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js\");\nconst mongoose = __webpack_require__(/*! ./mongoose.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js\");\nconst mysql = __webpack_require__(/*! ./mysql.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js\");\nconst mysql2 = __webpack_require__(/*! ./mysql2.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js\");\nconst index$5 = __webpack_require__(/*! ./openai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js\");\nconst postgres = __webpack_require__(/*! ./postgres.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js\");\nconst postgresjs = __webpack_require__(/*! ./postgresjs.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js\");\nconst prisma = __webpack_require__(/*! ./prisma.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js\");\nconst redis = __webpack_require__(/*! ./redis.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js\");\nconst tedious = __webpack_require__(/*! ./tedious.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js\");\nconst index$4 = __webpack_require__(/*! ./vercelai/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js\");\n\n/**\n * With OTEL, all performance integrations will be added, as OTEL only initializes them when the patched package is actually required.\n */\nfunction getAutoPerformanceIntegrations() {\n return [\n express.expressIntegration(),\n index.fastifyIntegration(),\n graphql.graphqlIntegration(),\n index$2.honoIntegration(),\n mongo.mongoIntegration(),\n mongoose.mongooseIntegration(),\n mysql.mysqlIntegration(),\n mysql2.mysql2Integration(),\n redis.redisIntegration(),\n postgres.postgresIntegration(),\n prisma.prismaIntegration(),\n index$1.hapiIntegration(),\n koa.koaIntegration(),\n connect.connectIntegration(),\n tedious.tediousIntegration(),\n genericPool.genericPoolIntegration(),\n kafka.kafkaIntegration(),\n amqplib.amqplibIntegration(),\n lrumemoizer.lruMemoizerIntegration(),\n // AI providers\n // LangChain must come first to disable AI provider integrations before they instrument\n index$3.langChainIntegration(),\n index$8.langGraphIntegration(),\n index$4.vercelAIIntegration(),\n index$5.openAIIntegration(),\n index$6.anthropicAIIntegration(),\n index$7.googleGenAIIntegration(),\n postgresjs.postgresJsIntegration(),\n firebase.firebaseIntegration(),\n ];\n}\n\n/**\n * Get a list of methods to instrument OTEL, when preload instrumentation.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction getOpenTelemetryInstrumentationToPreload() {\n return [\n http.instrumentSentryHttp,\n http.instrumentOtelHttp,\n express.instrumentExpress,\n connect.instrumentConnect,\n index.instrumentFastify,\n index.instrumentFastifyV3,\n index$1.instrumentHapi,\n index$2.instrumentHono,\n kafka.instrumentKafka,\n koa.instrumentKoa,\n lrumemoizer.instrumentLruMemoizer,\n mongo.instrumentMongo,\n mongoose.instrumentMongoose,\n mysql.instrumentMysql,\n mysql2.instrumentMysql2,\n postgres.instrumentPostgres,\n index$1.instrumentHapi,\n graphql.instrumentGraphql,\n redis.instrumentRedis,\n tedious.instrumentTedious,\n genericPool.instrumentGenericPool,\n amqplib.instrumentAmqplib,\n index$3.instrumentLangChain,\n index$4.instrumentVercelAi,\n index$5.instrumentOpenAi,\n postgresjs.instrumentPostgresJs,\n firebase.instrumentFirebase,\n index$6.instrumentAnthropicAi,\n index$7.instrumentGoogleGenAI,\n index$8.instrumentLangGraph,\n ];\n}\n\nexports.getAutoPerformanceIntegrations = getAutoPerformanceIntegrations;\nexports.getOpenTelemetryInstrumentationToPreload = getOpenTelemetryInstrumentationToPreload;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvaW5kZXguanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLDRIQUFZO0FBQ2pDLGdCQUFnQixtQkFBTyxDQUFDLHlJQUFjO0FBQ3RDLGdCQUFnQixtQkFBTyxDQUFDLCtKQUF5QjtBQUNqRCxnQkFBZ0IsbUJBQU8sQ0FBQyx5SUFBYztBQUN0QyxnQkFBZ0IsbUJBQU8sQ0FBQyx5SUFBYztBQUN0QyxjQUFjLG1CQUFPLENBQUMscUpBQW9CO0FBQzFDLGlCQUFpQixtQkFBTyxDQUFDLDZKQUF3QjtBQUNqRCxvQkFBb0IsbUJBQU8sQ0FBQyxpSkFBa0I7QUFDOUMsZ0JBQWdCLG1CQUFPLENBQUMsK0pBQXlCO0FBQ2pELGdCQUFnQixtQkFBTyxDQUFDLHlJQUFjO0FBQ3RDLGdCQUFnQixtQkFBTyxDQUFDLCtJQUFpQjtBQUN6QyxnQkFBZ0IsbUJBQU8sQ0FBQywrSUFBaUI7QUFDekMsY0FBYyxtQkFBTyxDQUFDLHFJQUFZO0FBQ2xDLFlBQVksbUJBQU8sQ0FBQyxpSUFBVTtBQUM5QixnQkFBZ0IsbUJBQU8sQ0FBQyx5SkFBc0I7QUFDOUMsZ0JBQWdCLG1CQUFPLENBQUMseUpBQXNCO0FBQzlDLG9CQUFvQixtQkFBTyxDQUFDLGlKQUFrQjtBQUM5QyxjQUFjLG1CQUFPLENBQUMscUlBQVk7QUFDbEMsaUJBQWlCLG1CQUFPLENBQUMsMklBQWU7QUFDeEMsY0FBYyxtQkFBTyxDQUFDLHFJQUFZO0FBQ2xDLGVBQWUsbUJBQU8sQ0FBQyx1SUFBYTtBQUNwQyxnQkFBZ0IsbUJBQU8sQ0FBQyxtSkFBbUI7QUFDM0MsaUJBQWlCLG1CQUFPLENBQUMsMklBQWU7QUFDeEMsbUJBQW1CLG1CQUFPLENBQUMsK0lBQWlCO0FBQzVDLGVBQWUsbUJBQU8sQ0FBQyx1SUFBYTtBQUNwQyxjQUFjLG1CQUFPLENBQUMscUlBQVk7QUFDbEMsZ0JBQWdCLG1CQUFPLENBQUMseUlBQWM7QUFDdEMsZ0JBQWdCLG1CQUFPLENBQUMsdUpBQXFCOztBQUU3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxzQ0FBc0M7QUFDdEMsZ0RBQWdEO0FBQ2hEIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBodHRwID0gcmVxdWlyZSgnLi4vaHR0cC5qcycpO1xuY29uc3QgYW1xcGxpYiA9IHJlcXVpcmUoJy4vYW1xcGxpYi5qcycpO1xuY29uc3QgaW5kZXgkNiA9IHJlcXVpcmUoJy4vYW50aHJvcGljLWFpL2luZGV4LmpzJyk7XG5jb25zdCBjb25uZWN0ID0gcmVxdWlyZSgnLi9jb25uZWN0LmpzJyk7XG5jb25zdCBleHByZXNzID0gcmVxdWlyZSgnLi9leHByZXNzLmpzJyk7XG5jb25zdCBpbmRleCA9IHJlcXVpcmUoJy4vZmFzdGlmeS9pbmRleC5qcycpO1xuY29uc3QgZmlyZWJhc2UgPSByZXF1aXJlKCcuL2ZpcmViYXNlL2ZpcmViYXNlLmpzJyk7XG5jb25zdCBnZW5lcmljUG9vbCA9IHJlcXVpcmUoJy4vZ2VuZXJpY1Bvb2wuanMnKTtcbmNvbnN0IGluZGV4JDcgPSByZXF1aXJlKCcuL2dvb2dsZS1nZW5haS9pbmRleC5qcycpO1xuY29uc3QgZ3JhcGhxbCA9IHJlcXVpcmUoJy4vZ3JhcGhxbC5qcycpO1xuY29uc3QgaW5kZXgkMSA9IHJlcXVpcmUoJy4vaGFwaS9pbmRleC5qcycpO1xuY29uc3QgaW5kZXgkMiA9IHJlcXVpcmUoJy4vaG9uby9pbmRleC5qcycpO1xuY29uc3Qga2Fma2EgPSByZXF1aXJlKCcuL2thZmthLmpzJyk7XG5jb25zdCBrb2EgPSByZXF1aXJlKCcuL2tvYS5qcycpO1xuY29uc3QgaW5kZXgkMyA9IHJlcXVpcmUoJy4vbGFuZ2NoYWluL2luZGV4LmpzJyk7XG5jb25zdCBpbmRleCQ4ID0gcmVxdWlyZSgnLi9sYW5nZ3JhcGgvaW5kZXguanMnKTtcbmNvbnN0IGxydW1lbW9pemVyID0gcmVxdWlyZSgnLi9scnVtZW1vaXplci5qcycpO1xuY29uc3QgbW9uZ28gPSByZXF1aXJlKCcuL21vbmdvLmpzJyk7XG5jb25zdCBtb25nb29zZSA9IHJlcXVpcmUoJy4vbW9uZ29vc2UuanMnKTtcbmNvbnN0IG15c3FsID0gcmVxdWlyZSgnLi9teXNxbC5qcycpO1xuY29uc3QgbXlzcWwyID0gcmVxdWlyZSgnLi9teXNxbDIuanMnKTtcbmNvbnN0IGluZGV4JDUgPSByZXF1aXJlKCcuL29wZW5haS9pbmRleC5qcycpO1xuY29uc3QgcG9zdGdyZXMgPSByZXF1aXJlKCcuL3Bvc3RncmVzLmpzJyk7XG5jb25zdCBwb3N0Z3Jlc2pzID0gcmVxdWlyZSgnLi9wb3N0Z3Jlc2pzLmpzJyk7XG5jb25zdCBwcmlzbWEgPSByZXF1aXJlKCcuL3ByaXNtYS5qcycpO1xuY29uc3QgcmVkaXMgPSByZXF1aXJlKCcuL3JlZGlzLmpzJyk7XG5jb25zdCB0ZWRpb3VzID0gcmVxdWlyZSgnLi90ZWRpb3VzLmpzJyk7XG5jb25zdCBpbmRleCQ0ID0gcmVxdWlyZSgnLi92ZXJjZWxhaS9pbmRleC5qcycpO1xuXG4vKipcbiAqIFdpdGggT1RFTCwgYWxsIHBlcmZvcm1hbmNlIGludGVncmF0aW9ucyB3aWxsIGJlIGFkZGVkLCBhcyBPVEVMIG9ubHkgaW5pdGlhbGl6ZXMgdGhlbSB3aGVuIHRoZSBwYXRjaGVkIHBhY2thZ2UgaXMgYWN0dWFsbHkgcmVxdWlyZWQuXG4gKi9cbmZ1bmN0aW9uIGdldEF1dG9QZXJmb3JtYW5jZUludGVncmF0aW9ucygpIHtcbiAgcmV0dXJuIFtcbiAgICBleHByZXNzLmV4cHJlc3NJbnRlZ3JhdGlvbigpLFxuICAgIGluZGV4LmZhc3RpZnlJbnRlZ3JhdGlvbigpLFxuICAgIGdyYXBocWwuZ3JhcGhxbEludGVncmF0aW9uKCksXG4gICAgaW5kZXgkMi5ob25vSW50ZWdyYXRpb24oKSxcbiAgICBtb25nby5tb25nb0ludGVncmF0aW9uKCksXG4gICAgbW9uZ29vc2UubW9uZ29vc2VJbnRlZ3JhdGlvbigpLFxuICAgIG15c3FsLm15c3FsSW50ZWdyYXRpb24oKSxcbiAgICBteXNxbDIubXlzcWwySW50ZWdyYXRpb24oKSxcbiAgICByZWRpcy5yZWRpc0ludGVncmF0aW9uKCksXG4gICAgcG9zdGdyZXMucG9zdGdyZXNJbnRlZ3JhdGlvbigpLFxuICAgIHByaXNtYS5wcmlzbWFJbnRlZ3JhdGlvbigpLFxuICAgIGluZGV4JDEuaGFwaUludGVncmF0aW9uKCksXG4gICAga29hLmtvYUludGVncmF0aW9uKCksXG4gICAgY29ubmVjdC5jb25uZWN0SW50ZWdyYXRpb24oKSxcbiAgICB0ZWRpb3VzLnRlZGlvdXNJbnRlZ3JhdGlvbigpLFxuICAgIGdlbmVyaWNQb29sLmdlbmVyaWNQb29sSW50ZWdyYXRpb24oKSxcbiAgICBrYWZrYS5rYWZrYUludGVncmF0aW9uKCksXG4gICAgYW1xcGxpYi5hbXFwbGliSW50ZWdyYXRpb24oKSxcbiAgICBscnVtZW1vaXplci5scnVNZW1vaXplckludGVncmF0aW9uKCksXG4gICAgLy8gQUkgcHJvdmlkZXJzXG4gICAgLy8gTGFuZ0NoYWluIG11c3QgY29tZSBmaXJzdCB0byBkaXNhYmxlIEFJIHByb3ZpZGVyIGludGVncmF0aW9ucyBiZWZvcmUgdGhleSBpbnN0cnVtZW50XG4gICAgaW5kZXgkMy5sYW5nQ2hhaW5JbnRlZ3JhdGlvbigpLFxuICAgIGluZGV4JDgubGFuZ0dyYXBoSW50ZWdyYXRpb24oKSxcbiAgICBpbmRleCQ0LnZlcmNlbEFJSW50ZWdyYXRpb24oKSxcbiAgICBpbmRleCQ1Lm9wZW5BSUludGVncmF0aW9uKCksXG4gICAgaW5kZXgkNi5hbnRocm9waWNBSUludGVncmF0aW9uKCksXG4gICAgaW5kZXgkNy5nb29nbGVHZW5BSUludGVncmF0aW9uKCksXG4gICAgcG9zdGdyZXNqcy5wb3N0Z3Jlc0pzSW50ZWdyYXRpb24oKSxcbiAgICBmaXJlYmFzZS5maXJlYmFzZUludGVncmF0aW9uKCksXG4gIF07XG59XG5cbi8qKlxuICogR2V0IGEgbGlzdCBvZiBtZXRob2RzIHRvIGluc3RydW1lbnQgT1RFTCwgd2hlbiBwcmVsb2FkIGluc3RydW1lbnRhdGlvbi5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmZ1bmN0aW9uIGdldE9wZW5UZWxlbWV0cnlJbnN0cnVtZW50YXRpb25Ub1ByZWxvYWQoKSB7XG4gIHJldHVybiBbXG4gICAgaHR0cC5pbnN0cnVtZW50U2VudHJ5SHR0cCxcbiAgICBodHRwLmluc3RydW1lbnRPdGVsSHR0cCxcbiAgICBleHByZXNzLmluc3RydW1lbnRFeHByZXNzLFxuICAgIGNvbm5lY3QuaW5zdHJ1bWVudENvbm5lY3QsXG4gICAgaW5kZXguaW5zdHJ1bWVudEZhc3RpZnksXG4gICAgaW5kZXguaW5zdHJ1bWVudEZhc3RpZnlWMyxcbiAgICBpbmRleCQxLmluc3RydW1lbnRIYXBpLFxuICAgIGluZGV4JDIuaW5zdHJ1bWVudEhvbm8sXG4gICAga2Fma2EuaW5zdHJ1bWVudEthZmthLFxuICAgIGtvYS5pbnN0cnVtZW50S29hLFxuICAgIGxydW1lbW9pemVyLmluc3RydW1lbnRMcnVNZW1vaXplcixcbiAgICBtb25nby5pbnN0cnVtZW50TW9uZ28sXG4gICAgbW9uZ29vc2UuaW5zdHJ1bWVudE1vbmdvb3NlLFxuICAgIG15c3FsLmluc3RydW1lbnRNeXNxbCxcbiAgICBteXNxbDIuaW5zdHJ1bWVudE15c3FsMixcbiAgICBwb3N0Z3Jlcy5pbnN0cnVtZW50UG9zdGdyZXMsXG4gICAgaW5kZXgkMS5pbnN0cnVtZW50SGFwaSxcbiAgICBncmFwaHFsLmluc3RydW1lbnRHcmFwaHFsLFxuICAgIHJlZGlzLmluc3RydW1lbnRSZWRpcyxcbiAgICB0ZWRpb3VzLmluc3RydW1lbnRUZWRpb3VzLFxuICAgIGdlbmVyaWNQb29sLmluc3RydW1lbnRHZW5lcmljUG9vbCxcbiAgICBhbXFwbGliLmluc3RydW1lbnRBbXFwbGliLFxuICAgIGluZGV4JDMuaW5zdHJ1bWVudExhbmdDaGFpbixcbiAgICBpbmRleCQ0Lmluc3RydW1lbnRWZXJjZWxBaSxcbiAgICBpbmRleCQ1Lmluc3RydW1lbnRPcGVuQWksXG4gICAgcG9zdGdyZXNqcy5pbnN0cnVtZW50UG9zdGdyZXNKcyxcbiAgICBmaXJlYmFzZS5pbnN0cnVtZW50RmlyZWJhc2UsXG4gICAgaW5kZXgkNi5pbnN0cnVtZW50QW50aHJvcGljQWksXG4gICAgaW5kZXgkNy5pbnN0cnVtZW50R29vZ2xlR2VuQUksXG4gICAgaW5kZXgkOC5pbnN0cnVtZW50TGFuZ0dyYXBoLFxuICBdO1xufVxuXG5leHBvcnRzLmdldEF1dG9QZXJmb3JtYW5jZUludGVncmF0aW9ucyA9IGdldEF1dG9QZXJmb3JtYW5jZUludGVncmF0aW9ucztcbmV4cG9ydHMuZ2V0T3BlblRlbGVtZXRyeUluc3RydW1lbnRhdGlvblRvUHJlbG9hZCA9IGdldE9wZW5UZWxlbWV0cnlJbnN0cnVtZW50YXRpb25Ub1ByZWxvYWQ7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationKafkajs = __webpack_require__(/*! @opentelemetry/instrumentation-kafkajs */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-kafkajs@0.23.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-kafkajs/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Kafka';\n\nconst instrumentKafka = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationKafkajs.KafkaJsInstrumentation({\n consumerHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.kafkajs.otel.consumer');\n },\n producerHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.kafkajs.otel.producer');\n },\n }),\n);\n\nconst _kafkaIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentKafka();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [kafkajs](https://www.npmjs.com/package/kafkajs) library.\n *\n * For more information, see the [`kafkaIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/kafka/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.kafkaIntegration()],\n * });\n */\nconst kafkaIntegration = core.defineIntegration(_kafkaIntegration);\n\nexports.instrumentKafka = instrumentKafka;\nexports.kafkaIntegration = kafkaIntegration;\n//# sourceMappingURL=kafka.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcva2Fma2EuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsK0JBQStCLG1CQUFPLENBQUMsd05BQXdDO0FBQy9FLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUEsdUJBQXVCO0FBQ3ZCLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9rYWZrYS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uS2Fma2FqcyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1rYWZrYWpzJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnS2Fma2EnO1xuXG5jb25zdCBpbnN0cnVtZW50S2Fma2EgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICAoKSA9PlxuICAgIG5ldyBpbnN0cnVtZW50YXRpb25LYWZrYWpzLkthZmthSnNJbnN0cnVtZW50YXRpb24oe1xuICAgICAgY29uc3VtZXJIb29rKHNwYW4pIHtcbiAgICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmthZmthanMub3RlbC5jb25zdW1lcicpO1xuICAgICAgfSxcbiAgICAgIHByb2R1Y2VySG9vayhzcGFuKSB7XG4gICAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5rYWZrYWpzLm90ZWwucHJvZHVjZXInKTtcbiAgICAgIH0sXG4gICAgfSksXG4pO1xuXG5jb25zdCBfa2Fma2FJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50S2Fma2EoKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2thZmthanNdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2thZmthanMpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BrYWZrYUludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL2thZmthLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkua2Fma2FJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICovXG5jb25zdCBrYWZrYUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfa2Fma2FJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudEthZmthID0gaW5zdHJ1bWVudEthZmthO1xuZXhwb3J0cy5rYWZrYUludGVncmF0aW9uID0ga2Fma2FJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWthZmthLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/kafka.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationKnex = __webpack_require__(/*! @opentelemetry/instrumentation-knex */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-knex@0.58.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-knex/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Knex';\n\nconst instrumentKnex = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () => new instrumentationKnex.KnexInstrumentation({ requireParentSpan: true }),\n);\n\nconst _knexIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentKnex();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n instrumentationWrappedCallback?.(() =>\n client.on('spanStart', span => {\n const { data } = core.spanToJSON(span);\n // knex.version is always set in the span data\n // https://github.com/open-telemetry/opentelemetry-js-contrib/blob/0309caeafc44ac9cb13a3345b790b01b76d0497d/plugins/node/opentelemetry-instrumentation-knex/src/instrumentation.ts#L138\n if ('knex.version' in data) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.knex');\n }\n }),\n );\n },\n };\n}) ;\n\n/**\n * Knex integration\n *\n * Capture tracing data for [Knex](https://knexjs.org/).\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.knexIntegration()],\n * });\n * ```\n */\nconst knexIntegration = core.defineIntegration(_knexIntegration);\n\nexports.instrumentKnex = instrumentKnex;\nexports.knexIntegration = knexIntegration;\n//# sourceMappingURL=knex.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcva25leC5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSw0QkFBNEIsbUJBQU8sQ0FBQywrTUFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7O0FBRUE7QUFDQTtBQUNBLHNEQUFzRCx5QkFBeUI7QUFDL0U7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsT0FBTztBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQSxzQkFBc0I7QUFDdEIsdUJBQXVCO0FBQ3ZCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2tuZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbktuZXggPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24ta25leCcpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ0tuZXgnO1xuXG5jb25zdCBpbnN0cnVtZW50S25leCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+IG5ldyBpbnN0cnVtZW50YXRpb25LbmV4LktuZXhJbnN0cnVtZW50YXRpb24oeyByZXF1aXJlUGFyZW50U3BhbjogdHJ1ZSB9KSxcbik7XG5cbmNvbnN0IF9rbmV4SW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICBsZXQgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSBpbnN0cnVtZW50S25leCgpO1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrID0gbm9kZUNvcmUuaW5zdHJ1bWVudFdoZW5XcmFwcGVkKGluc3RydW1lbnRhdGlvbik7XG4gICAgfSxcblxuICAgIHNldHVwKGNsaWVudCkge1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrPy4oKCkgPT5cbiAgICAgICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCBzcGFuID0+IHtcbiAgICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgICAgICAgICAvLyBrbmV4LnZlcnNpb24gaXMgYWx3YXlzIHNldCBpbiB0aGUgc3BhbiBkYXRhXG4gICAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL29wZW4tdGVsZW1ldHJ5L29wZW50ZWxlbWV0cnktanMtY29udHJpYi9ibG9iLzAzMDljYWVhZmM0NGFjOWNiMTNhMzM0NWI3OTBiMDFiNzZkMDQ5N2QvcGx1Z2lucy9ub2RlL29wZW50ZWxlbWV0cnktaW5zdHJ1bWVudGF0aW9uLWtuZXgvc3JjL2luc3RydW1lbnRhdGlvbi50cyNMMTM4XG4gICAgICAgICAgaWYgKCdrbmV4LnZlcnNpb24nIGluIGRhdGEpIHtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU4sICdhdXRvLmRiLm90ZWwua25leCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogS25leCBpbnRlZ3JhdGlvblxuICpcbiAqIENhcHR1cmUgdHJhY2luZyBkYXRhIGZvciBbS25leF0oaHR0cHM6Ly9rbmV4anMub3JnLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGltcG9ydCAqIGFzIFNlbnRyeSBmcm9tICdAc2VudHJ5L25vZGUnO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkua25leEludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3Qga25leEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfa25leEludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50S25leCA9IGluc3RydW1lbnRLbmV4O1xuZXhwb3J0cy5rbmV4SW50ZWdyYXRpb24gPSBrbmV4SW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1rbmV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/knex.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js":
/*!*****************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js ***!
\*****************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationKoa = __webpack_require__(/*! @opentelemetry/instrumentation-koa */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-koa@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-koa/build/src/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../debug-build.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\nconst INTEGRATION_NAME = 'Koa';\n\nconst instrumentKoa = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationKoa.KoaInstrumentation,\n (options = {}) => {\n return {\n ignoreLayersType: options.ignoreLayersType ,\n requestHook(span, info) {\n nodeCore.addOriginToSpan(span, 'auto.http.otel.koa');\n\n const attributes = core.spanToJSON(span).data;\n\n // this is one of: middleware, router\n const type = attributes['koa.type'];\n if (type) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_OP, `${type}.koa`);\n }\n\n // Also update the name\n const name = attributes['koa.name'];\n if (typeof name === 'string') {\n // Somehow, name is sometimes `''` for middleware spans\n // See: https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2220\n span.updateName(name || '< unknown >');\n }\n\n if (core.getIsolationScope() === core.getDefaultIsolationScope()) {\n debugBuild.DEBUG_BUILD && core.debug.warn('Isolation scope is default isolation scope - skipping setting transactionName');\n return;\n }\n const route = attributes[semanticConventions.ATTR_HTTP_ROUTE];\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n const method = info.context?.request?.method?.toUpperCase() || 'GET';\n if (route) {\n core.getIsolationScope().setTransactionName(`${method} ${route}`);\n }\n },\n } ;\n },\n);\n\nconst _koaIntegration = ((options = {}) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentKoa(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for [Koa](https://koajs.com/).\n *\n * If you also want to capture errors, you need to call `setupKoaErrorHandler(app)` after you set up your Koa server.\n *\n * For more information, see the [koa documentation](https://docs.sentry.io/platforms/javascript/guides/koa/).\n *\n * @param {KoaOptions} options Configuration options for the Koa integration.\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.koaIntegration()],\n * })\n * ```\n *\n * @example\n * ```javascript\n * // To ignore middleware spans\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [\n * Sentry.koaIntegration({\n * ignoreLayersType: ['middleware']\n * })\n * ],\n * })\n * ```\n */\nconst koaIntegration = core.defineIntegration(_koaIntegration);\n\n/**\n * Add an Koa error handler to capture errors to Sentry.\n *\n * The error handler must be before any other middleware and after all controllers.\n *\n * @param app The Express instances\n * @param options {ExpressHandlerOptions} Configuration options for the handler\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n * const Koa = require(\"koa\");\n *\n * const app = new Koa();\n *\n * Sentry.setupKoaErrorHandler(app);\n *\n * // Add your routes, etc.\n *\n * app.listen(3000);\n * ```\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst setupKoaErrorHandler = (app) => {\n app.use(async (ctx, next) => {\n try {\n await next();\n } catch (error) {\n core.captureException(error, {\n mechanism: {\n handled: false,\n type: 'auto.middleware.koa',\n },\n });\n throw error;\n }\n });\n\n nodeCore.ensureIsWrapped(app.use, 'koa');\n};\n\nexports.instrumentKoa = instrumentKoa;\nexports.koaIntegration = koaIntegration;\nexports.setupKoaErrorHandler = setupKoaErrorHandler;\n//# sourceMappingURL=koa.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcva29hLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLDJCQUEyQixtQkFBTyxDQUFDLDRNQUFvQztBQUN2RSw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxnSUFBc0I7O0FBRWpEOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7QUFDZjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxrRUFBa0UsS0FBSztBQUN2RTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlELFFBQVEsRUFBRSxNQUFNO0FBQ3pFO0FBQ0EsT0FBTztBQUNQO0FBQ0EsR0FBRztBQUNIOztBQUVBLHNDQUFzQztBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLFlBQVk7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHVCQUF1QjtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUDtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBOztBQUVBLHFCQUFxQjtBQUNyQixzQkFBc0I7QUFDdEIsNEJBQTRCO0FBQzVCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2tvYS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uS29hID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWtvYScpO1xuY29uc3Qgc2VtYW50aWNDb252ZW50aW9ucyA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3NlbWFudGljLWNvbnZlbnRpb25zJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBkZWJ1Z0J1aWxkID0gcmVxdWlyZSgnLi4vLi4vZGVidWctYnVpbGQuanMnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdLb2EnO1xuXG5jb25zdCBpbnN0cnVtZW50S29hID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgaW5zdHJ1bWVudGF0aW9uS29hLktvYUluc3RydW1lbnRhdGlvbixcbiAgKG9wdGlvbnMgPSB7fSkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBpZ25vcmVMYXllcnNUeXBlOiBvcHRpb25zLmlnbm9yZUxheWVyc1R5cGUgLFxuICAgICAgcmVxdWVzdEhvb2soc3BhbiwgaW5mbykge1xuICAgICAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uaHR0cC5vdGVsLmtvYScpO1xuXG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBjb3JlLnNwYW5Ub0pTT04oc3BhbikuZGF0YTtcblxuICAgICAgICAvLyB0aGlzIGlzIG9uZSBvZjogbWlkZGxld2FyZSwgcm91dGVyXG4gICAgICAgIGNvbnN0IHR5cGUgPSBhdHRyaWJ1dGVzWydrb2EudHlwZSddO1xuICAgICAgICBpZiAodHlwZSkge1xuICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUCwgYCR7dHlwZX0ua29hYCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBbHNvIHVwZGF0ZSB0aGUgbmFtZVxuICAgICAgICBjb25zdCBuYW1lID0gYXR0cmlidXRlc1sna29hLm5hbWUnXTtcbiAgICAgICAgaWYgKHR5cGVvZiBuYW1lID09PSAnc3RyaW5nJykge1xuICAgICAgICAgIC8vIFNvbWVob3csIG5hbWUgaXMgc29tZXRpbWVzIGAnJ2AgZm9yIG1pZGRsZXdhcmUgc3BhbnNcbiAgICAgICAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXRlbGVtZXRyeS9vcGVudGVsZW1ldHJ5LWpzLWNvbnRyaWIvaXNzdWVzLzIyMjBcbiAgICAgICAgICBzcGFuLnVwZGF0ZU5hbWUobmFtZSB8fCAnPCB1bmtub3duID4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb3JlLmdldElzb2xhdGlvblNjb3BlKCkgPT09IGNvcmUuZ2V0RGVmYXVsdElzb2xhdGlvblNjb3BlKCkpIHtcbiAgICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcud2FybignSXNvbGF0aW9uIHNjb3BlIGlzIGRlZmF1bHQgaXNvbGF0aW9uIHNjb3BlIC0gc2tpcHBpbmcgc2V0dGluZyB0cmFuc2FjdGlvbk5hbWUnKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgcm91dGUgPSBhdHRyaWJ1dGVzW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9IVFRQX1JPVVRFXTtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtbWVtYmVyLWFjY2Vzc1xuICAgICAgICBjb25zdCBtZXRob2QgPSBpbmZvLmNvbnRleHQ/LnJlcXVlc3Q/Lm1ldGhvZD8udG9VcHBlckNhc2UoKSB8fCAnR0VUJztcbiAgICAgICAgaWYgKHJvdXRlKSB7XG4gICAgICAgICAgY29yZS5nZXRJc29sYXRpb25TY29wZSgpLnNldFRyYW5zYWN0aW9uTmFtZShgJHttZXRob2R9ICR7cm91dGV9YCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSA7XG4gIH0sXG4pO1xuXG5jb25zdCBfa29hSW50ZWdyYXRpb24gPSAoKG9wdGlvbnMgPSB7fSkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudEtvYShvcHRpb25zKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciBbS29hXShodHRwczovL2tvYWpzLmNvbS8pLlxuICpcbiAqIElmIHlvdSBhbHNvIHdhbnQgdG8gY2FwdHVyZSBlcnJvcnMsIHlvdSBuZWVkIHRvIGNhbGwgYHNldHVwS29hRXJyb3JIYW5kbGVyKGFwcClgIGFmdGVyIHlvdSBzZXQgdXAgeW91ciBLb2Egc2VydmVyLlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtrb2EgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMva29hLykuXG4gKlxuICogQHBhcmFtIHtLb2FPcHRpb25zfSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIEtvYSBpbnRlZ3JhdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkua29hSW50ZWdyYXRpb24oKV0sXG4gKiB9KVxuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIC8vIFRvIGlnbm9yZSBtaWRkbGV3YXJlIHNwYW5zXG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5rb2FJbnRlZ3JhdGlvbih7XG4gKiAgICAgICBpZ25vcmVMYXllcnNUeXBlOiBbJ21pZGRsZXdhcmUnXVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KVxuICogYGBgXG4gKi9cbmNvbnN0IGtvYUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfa29hSW50ZWdyYXRpb24pO1xuXG4vKipcbiAqIEFkZCBhbiBLb2EgZXJyb3IgaGFuZGxlciB0byBjYXB0dXJlIGVycm9ycyB0byBTZW50cnkuXG4gKlxuICogVGhlIGVycm9yIGhhbmRsZXIgbXVzdCBiZSBiZWZvcmUgYW55IG90aGVyIG1pZGRsZXdhcmUgYW5kIGFmdGVyIGFsbCBjb250cm9sbGVycy5cbiAqXG4gKiBAcGFyYW0gYXBwIFRoZSBFeHByZXNzIGluc3RhbmNlc1xuICogQHBhcmFtIG9wdGlvbnMge0V4cHJlc3NIYW5kbGVyT3B0aW9uc30gQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgaGFuZGxlclxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqIGNvbnN0IEtvYSA9IHJlcXVpcmUoXCJrb2FcIik7XG4gKlxuICogY29uc3QgYXBwID0gbmV3IEtvYSgpO1xuICpcbiAqIFNlbnRyeS5zZXR1cEtvYUVycm9ySGFuZGxlcihhcHApO1xuICpcbiAqIC8vIEFkZCB5b3VyIHJvdXRlcywgZXRjLlxuICpcbiAqIGFwcC5saXN0ZW4oMzAwMCk7XG4gKiBgYGBcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmNvbnN0IHNldHVwS29hRXJyb3JIYW5kbGVyID0gKGFwcCkgPT4ge1xuICBhcHAudXNlKGFzeW5jIChjdHgsIG5leHQpID0+IHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgbmV4dCgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb3JlLmNhcHR1cmVFeGNlcHRpb24oZXJyb3IsIHtcbiAgICAgICAgbWVjaGFuaXNtOiB7XG4gICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgICAgdHlwZTogJ2F1dG8ubWlkZGxld2FyZS5rb2EnLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH0pO1xuXG4gIG5vZGVDb3JlLmVuc3VyZUlzV3JhcHBlZChhcHAudXNlLCAna29hJyk7XG59O1xuXG5leHBvcnRzLmluc3RydW1lbnRLb2EgPSBpbnN0cnVtZW50S29hO1xuZXhwb3J0cy5rb2FJbnRlZ3JhdGlvbiA9IGtvYUludGVncmF0aW9uO1xuZXhwb3J0cy5zZXR1cEtvYUVycm9ySGFuZGxlciA9IHNldHVwS29hRXJyb3JIYW5kbGVyO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9a29hLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/koa.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js ***!
\*****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js\");\n\nconst instrumentLangChain = nodeCore.generateInstrumentOnce(\n core.LANGCHAIN_INTEGRATION_NAME,\n options => new instrumentation.SentryLangChainInstrumentation(options),\n);\n\nconst _langChainIntegration = ((options = {}) => {\n return {\n name: core.LANGCHAIN_INTEGRATION_NAME,\n setupOnce() {\n instrumentLangChain(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for LangChain.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments LangChain runnable instances\n * to capture telemetry data by injecting Sentry callback handlers into all LangChain calls.\n *\n * **Important:** This integration automatically skips wrapping the OpenAI, Anthropic, and Google GenAI\n * providers to prevent duplicate spans when using LangChain with these AI providers.\n * LangChain handles the instrumentation for all underlying AI providers.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n * import { ChatOpenAI } from '@langchain/openai';\n *\n * Sentry.init({\n * integrations: [Sentry.langChainIntegration()],\n * sendDefaultPii: true, // Enable to record inputs/outputs\n * });\n *\n * // LangChain calls are automatically instrumented\n * const model = new ChatOpenAI();\n * await model.invoke(\"What is the capital of France?\");\n * ```\n *\n * ## Manual Callback Handler\n *\n * You can also manually add the Sentry callback handler alongside other callbacks:\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n * import { ChatOpenAI } from '@langchain/openai';\n *\n * const sentryHandler = Sentry.createLangChainCallbackHandler({\n * recordInputs: true,\n * recordOutputs: true\n * });\n *\n * const model = new ChatOpenAI();\n * await model.invoke(\n * \"What is the capital of France?\",\n * { callbacks: [sentryHandler, myOtherCallback] }\n * );\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record input messages/prompts (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.langChainIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.langChainIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n * ## Supported Events\n *\n * The integration captures the following LangChain lifecycle events:\n * - LLM/Chat Model: start, end, error\n * - Chain: start, end, error\n * - Tool: start, end, error\n *\n */\nconst langChainIntegration = core.defineIntegration(_langChainIntegration);\n\nexports.instrumentLangChain = instrumentLangChain;\nexports.langChainIntegration = langChainIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2NoYWluL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsbUtBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0Q0FBNEM7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksYUFBYTtBQUN6QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsMkJBQTJCO0FBQzNCLDRCQUE0QjtBQUM1QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9sYW5nY2hhaW4vaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRMYW5nQ2hhaW4gPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBjb3JlLkxBTkdDSEFJTl9JTlRFR1JBVElPTl9OQU1FLFxuICBvcHRpb25zID0+IG5ldyBpbnN0cnVtZW50YXRpb24uU2VudHJ5TGFuZ0NoYWluSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX2xhbmdDaGFpbkludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLkxBTkdDSEFJTl9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRMYW5nQ2hhaW4ob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgTGFuZ0NoYWluLlxuICpcbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgZW5hYmxlZCBieSBkZWZhdWx0LlxuICpcbiAqIFdoZW4gY29uZmlndXJlZCwgdGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IGluc3RydW1lbnRzIExhbmdDaGFpbiBydW5uYWJsZSBpbnN0YW5jZXNcbiAqIHRvIGNhcHR1cmUgdGVsZW1ldHJ5IGRhdGEgYnkgaW5qZWN0aW5nIFNlbnRyeSBjYWxsYmFjayBoYW5kbGVycyBpbnRvIGFsbCBMYW5nQ2hhaW4gY2FsbHMuXG4gKlxuICogKipJbXBvcnRhbnQ6KiogVGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IHNraXBzIHdyYXBwaW5nIHRoZSBPcGVuQUksIEFudGhyb3BpYywgYW5kIEdvb2dsZSBHZW5BSVxuICogcHJvdmlkZXJzIHRvIHByZXZlbnQgZHVwbGljYXRlIHNwYW5zIHdoZW4gdXNpbmcgTGFuZ0NoYWluIHdpdGggdGhlc2UgQUkgcHJvdmlkZXJzLlxuICogTGFuZ0NoYWluIGhhbmRsZXMgdGhlIGluc3RydW1lbnRhdGlvbiBmb3IgYWxsIHVuZGVybHlpbmcgQUkgcHJvdmlkZXJzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBpbXBvcnQgKiBhcyBTZW50cnkgZnJvbSAnQHNlbnRyeS9ub2RlJztcbiAqIGltcG9ydCB7IENoYXRPcGVuQUkgfSBmcm9tICdAbGFuZ2NoYWluL29wZW5haSc7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkubGFuZ0NoYWluSW50ZWdyYXRpb24oKV0sXG4gKiAgIHNlbmREZWZhdWx0UGlpOiB0cnVlLCAvLyBFbmFibGUgdG8gcmVjb3JkIGlucHV0cy9vdXRwdXRzXG4gKiB9KTtcbiAqXG4gKiAvLyBMYW5nQ2hhaW4gY2FsbHMgYXJlIGF1dG9tYXRpY2FsbHkgaW5zdHJ1bWVudGVkXG4gKiBjb25zdCBtb2RlbCA9IG5ldyBDaGF0T3BlbkFJKCk7XG4gKiBhd2FpdCBtb2RlbC5pbnZva2UoXCJXaGF0IGlzIHRoZSBjYXBpdGFsIG9mIEZyYW5jZT9cIik7XG4gKiBgYGBcbiAqXG4gKiAjIyBNYW51YWwgQ2FsbGJhY2sgSGFuZGxlclxuICpcbiAqIFlvdSBjYW4gYWxzbyBtYW51YWxseSBhZGQgdGhlIFNlbnRyeSBjYWxsYmFjayBoYW5kbGVyIGFsb25nc2lkZSBvdGhlciBjYWxsYmFja3M6XG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGltcG9ydCAqIGFzIFNlbnRyeSBmcm9tICdAc2VudHJ5L25vZGUnO1xuICogaW1wb3J0IHsgQ2hhdE9wZW5BSSB9IGZyb20gJ0BsYW5nY2hhaW4vb3BlbmFpJztcbiAqXG4gKiBjb25zdCBzZW50cnlIYW5kbGVyID0gU2VudHJ5LmNyZWF0ZUxhbmdDaGFpbkNhbGxiYWNrSGFuZGxlcih7XG4gKiAgIHJlY29yZElucHV0czogdHJ1ZSxcbiAqICAgcmVjb3JkT3V0cHV0czogdHJ1ZVxuICogfSk7XG4gKlxuICogY29uc3QgbW9kZWwgPSBuZXcgQ2hhdE9wZW5BSSgpO1xuICogYXdhaXQgbW9kZWwuaW52b2tlKFxuICogICBcIldoYXQgaXMgdGhlIGNhcGl0YWwgb2YgRnJhbmNlP1wiLFxuICogICB7IGNhbGxiYWNrczogW3NlbnRyeUhhbmRsZXIsIG15T3RoZXJDYWxsYmFja10gfVxuICogKTtcbiAqIGBgYFxuICpcbiAqICMjIE9wdGlvbnNcbiAqXG4gKiAtIGByZWNvcmRJbnB1dHNgOiBXaGV0aGVyIHRvIHJlY29yZCBpbnB1dCBtZXNzYWdlcy9wcm9tcHRzIChkZWZhdWx0OiByZXNwZWN0cyBgc2VuZERlZmF1bHRQaWlgIGNsaWVudCBvcHRpb24pXG4gKiAtIGByZWNvcmRPdXRwdXRzYDogV2hldGhlciB0byByZWNvcmQgcmVzcG9uc2UgdGV4dCAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICpcbiAqICMjIyBEZWZhdWx0IEJlaGF2aW9yXG4gKlxuICogQnkgZGVmYXVsdCwgdGhlIGludGVncmF0aW9uIHdpbGw6XG4gKiAtIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgT05MWSBpZiBgc2VuZERlZmF1bHRQaWlgIGlzIHNldCB0byBgdHJ1ZWAgaW4geW91ciBTZW50cnkgY2xpZW50IG9wdGlvbnNcbiAqIC0gT3RoZXJ3aXNlLCBpbnB1dHMgYW5kIG91dHB1dHMgYXJlIE5PVCByZWNvcmRlZCB1bmxlc3MgZXhwbGljaXRseSBlbmFibGVkXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIC8vIFJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgd2hlbiBzZW5kRGVmYXVsdFBpaSBpcyBmYWxzZVxuICogU2VudHJ5LmluaXQoe1xuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkubGFuZ0NoYWluSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiB0cnVlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogdHJ1ZVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KTtcbiAqXG4gKiAvLyBOZXZlciByZWNvcmQgaW5wdXRzL291dHB1dHMgcmVnYXJkbGVzcyBvZiBzZW5kRGVmYXVsdFBpaVxuICogU2VudHJ5LmluaXQoe1xuICogICBzZW5kRGVmYXVsdFBpaTogdHJ1ZSxcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5LmxhbmdDaGFpbkludGVncmF0aW9uKHtcbiAqICAgICAgIHJlY29yZElucHV0czogZmFsc2UsXG4gKiAgICAgICByZWNvcmRPdXRwdXRzOiBmYWxzZVxuICogICAgIH0pXG4gKiAgIF0sXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqICMjIFN1cHBvcnRlZCBFdmVudHNcbiAqXG4gKiBUaGUgaW50ZWdyYXRpb24gY2FwdHVyZXMgdGhlIGZvbGxvd2luZyBMYW5nQ2hhaW4gbGlmZWN5Y2xlIGV2ZW50czpcbiAqIC0gTExNL0NoYXQgTW9kZWw6IHN0YXJ0LCBlbmQsIGVycm9yXG4gKiAtIENoYWluOiBzdGFydCwgZW5kLCBlcnJvclxuICogLSBUb29sOiBzdGFydCwgZW5kLCBlcnJvclxuICpcbiAqL1xuY29uc3QgbGFuZ0NoYWluSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9sYW5nQ2hhaW5JbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudExhbmdDaGFpbiA9IGluc3RydW1lbnRMYW5nQ2hhaW47XG5leHBvcnRzLmxhbmdDaGFpbkludGVncmF0aW9uID0gbGFuZ0NoYWluSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js":
/*!***************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js ***!
\***************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.1.0 <2.0.0'];\n\n/**\n * Augments a callback handler list with Sentry's handler if not already present\n */\nfunction augmentCallbackHandlers(handlers, sentryHandler) {\n // Handle null/undefined - return array with just our handler\n if (!handlers) {\n return [sentryHandler];\n }\n\n // If handlers is already an array\n if (Array.isArray(handlers)) {\n // Check if our handler is already in the list\n if (handlers.includes(sentryHandler)) {\n return handlers;\n }\n // Add our handler to the list\n return [...handlers, sentryHandler];\n }\n\n // If it's a single handler object, convert to array\n if (typeof handlers === 'object') {\n return [handlers, sentryHandler];\n }\n\n // Unknown type - return original\n return handlers;\n}\n\n/**\n * Wraps Runnable methods (invoke, stream, batch) to inject Sentry callbacks at request time\n * Uses a Proxy to intercept method calls and augment the options.callbacks\n */\nfunction wrapRunnableMethod(\n originalMethod,\n sentryHandler,\n _methodName,\n) {\n return new Proxy(originalMethod, {\n apply(target, thisArg, args) {\n // LangChain Runnable method signatures:\n // invoke(input, options?) - options contains callbacks\n // stream(input, options?) - options contains callbacks\n // batch(inputs, options?) - options contains callbacks\n\n // Options is typically the second argument\n const optionsIndex = 1;\n let options = args[optionsIndex] ;\n\n // If options don't exist or aren't an object, create them\n if (!options || typeof options !== 'object' || Array.isArray(options)) {\n options = {};\n args[optionsIndex] = options;\n }\n\n // Inject our callback handler into options.callbacks (request time callbacks)\n const existingCallbacks = options.callbacks;\n const augmentedCallbacks = augmentCallbackHandlers(existingCallbacks, sentryHandler);\n options.callbacks = augmentedCallbacks;\n\n // Call original method with augmented options\n return Reflect.apply(target, thisArg, args);\n },\n }) ;\n}\n\n/**\n * Sentry LangChain instrumentation using OpenTelemetry.\n */\nclass SentryLangChainInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-langchain', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n * We patch the BaseChatModel class methods to inject callbacks\n *\n * We hook into provider packages (@langchain/anthropic, @langchain/openai, etc.)\n * because @langchain/core is often bundled and not loaded as a separate module\n */\n init() {\n const modules = [];\n\n // Hook into common LangChain provider packages\n const providerPackages = [\n '@langchain/anthropic',\n '@langchain/openai',\n '@langchain/google-genai',\n '@langchain/mistralai',\n '@langchain/google-vertexai',\n '@langchain/groq',\n ];\n\n for (const packageName of providerPackages) {\n // In CJS, LangChain packages re-export from dist/index.cjs files.\n // Patching only the root module sometimes misses the real implementation or\n // gets overwritten when that file is loaded. We add a file-level patch so that\n // _patch runs again on the concrete implementation\n modules.push(\n new instrumentation.InstrumentationNodeModuleDefinition(\n packageName,\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n [\n new instrumentation.InstrumentationNodeModuleFile(\n `${packageName}/dist/index.cjs`,\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n ),\n ],\n ),\n );\n }\n\n // Hook into main 'langchain' package to catch initChatModel (v1+)\n modules.push(\n new instrumentation.InstrumentationNodeModuleDefinition(\n 'langchain',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n [\n // To catch the CJS build that contains ConfigurableModel / initChatModel for v1\n new instrumentation.InstrumentationNodeModuleFile(\n 'langchain/dist/chat_models/universal.cjs',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n ),\n ],\n ),\n );\n\n return modules;\n }\n\n /**\n * Core patch logic - patches chat model methods to inject Sentry callbacks\n * This is called when a LangChain provider package is loaded\n */\n _patch(exports$1) {\n // Skip AI provider wrapping now that LangChain is actually being used\n // This prevents duplicate spans from Anthropic/OpenAI/GoogleGenAI standalone integrations\n core._INTERNAL_skipAiProviderWrapping([\n core.OPENAI_INTEGRATION_NAME,\n core.ANTHROPIC_AI_INTEGRATION_NAME,\n core.GOOGLE_GENAI_INTEGRATION_NAME,\n ]);\n\n // Create a shared handler instance\n const sentryHandler = core.createLangChainCallbackHandler(this.getConfig());\n\n // Patch Runnable methods to inject callbacks at request time\n // This directly manipulates options.callbacks that LangChain uses\n this._patchRunnableMethods(exports$1, sentryHandler);\n\n return exports$1;\n }\n\n /**\n * Patches chat model methods (invoke, stream, batch) to inject Sentry callbacks\n * Finds a chat model class from the provider package exports and patches its prototype methods\n */\n _patchRunnableMethods(exports$1, sentryHandler) {\n // Known chat model class names for each provider\n const knownChatModelNames = [\n 'ChatAnthropic',\n 'ChatOpenAI',\n 'ChatGoogleGenerativeAI',\n 'ChatMistralAI',\n 'ChatVertexAI',\n 'ChatGroq',\n 'ConfigurableModel',\n ];\n\n const exportsToPatch = (exports$1.universal_exports ?? exports$1) ;\n\n const chatModelClass = Object.values(exportsToPatch).find(exp => {\n return typeof exp === 'function' && knownChatModelNames.includes(exp.name);\n }) ;\n\n if (!chatModelClass) {\n return;\n }\n\n // Patch directly on chatModelClass.prototype\n const targetProto = chatModelClass.prototype ;\n\n // Skip if already patched (both file-level and module-level hooks resolve to the same prototype)\n if (targetProto.__sentry_patched__) {\n return;\n }\n targetProto.__sentry_patched__ = true;\n\n // Patch the methods (invoke, stream, batch)\n // All chat model instances will inherit these patched methods\n const methodsToPatch = ['invoke', 'stream', 'batch'] ;\n\n for (const methodName of methodsToPatch) {\n const method = targetProto[methodName];\n if (typeof method === 'function') {\n targetProto[methodName] = wrapRunnableMethod(\n method ,\n sentryHandler);\n }\n }\n }\n}\n\nexports.SentryLangChainInstrumentation = SentryLangChainInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2NoYWluL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQkFBMEI7QUFDMUI7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLFlBQVk7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsc0NBQXNDO0FBQ3RDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2xhbmdjaGFpbi9pbnN0cnVtZW50YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZXNUdW5uZWxQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJTRU5UUllfUkVMRUFTRVwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeUJhc2VQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5TmV4dEpzVmVyc2lvblwiXSA9IFwiMTYuMS42XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlRnJhbWVzRGlzdERpclwiXSA9IFwiLm5leHRcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVZlcmNlbENyb25zQ29uZmlnXCJdID0gdW5kZWZpbmVkO09iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcblxuY29uc3Qgc3VwcG9ydGVkVmVyc2lvbnMgPSBbJz49MC4xLjAgPDIuMC4wJ107XG5cbi8qKlxuICogQXVnbWVudHMgYSBjYWxsYmFjayBoYW5kbGVyIGxpc3Qgd2l0aCBTZW50cnkncyBoYW5kbGVyIGlmIG5vdCBhbHJlYWR5IHByZXNlbnRcbiAqL1xuZnVuY3Rpb24gYXVnbWVudENhbGxiYWNrSGFuZGxlcnMoaGFuZGxlcnMsIHNlbnRyeUhhbmRsZXIpIHtcbiAgLy8gSGFuZGxlIG51bGwvdW5kZWZpbmVkIC0gcmV0dXJuIGFycmF5IHdpdGgganVzdCBvdXIgaGFuZGxlclxuICBpZiAoIWhhbmRsZXJzKSB7XG4gICAgcmV0dXJuIFtzZW50cnlIYW5kbGVyXTtcbiAgfVxuXG4gIC8vIElmIGhhbmRsZXJzIGlzIGFscmVhZHkgYW4gYXJyYXlcbiAgaWYgKEFycmF5LmlzQXJyYXkoaGFuZGxlcnMpKSB7XG4gICAgLy8gQ2hlY2sgaWYgb3VyIGhhbmRsZXIgaXMgYWxyZWFkeSBpbiB0aGUgbGlzdFxuICAgIGlmIChoYW5kbGVycy5pbmNsdWRlcyhzZW50cnlIYW5kbGVyKSkge1xuICAgICAgcmV0dXJuIGhhbmRsZXJzO1xuICAgIH1cbiAgICAvLyBBZGQgb3VyIGhhbmRsZXIgdG8gdGhlIGxpc3RcbiAgICByZXR1cm4gWy4uLmhhbmRsZXJzLCBzZW50cnlIYW5kbGVyXTtcbiAgfVxuXG4gIC8vIElmIGl0J3MgYSBzaW5nbGUgaGFuZGxlciBvYmplY3QsIGNvbnZlcnQgdG8gYXJyYXlcbiAgaWYgKHR5cGVvZiBoYW5kbGVycyA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gW2hhbmRsZXJzLCBzZW50cnlIYW5kbGVyXTtcbiAgfVxuXG4gIC8vIFVua25vd24gdHlwZSAtIHJldHVybiBvcmlnaW5hbFxuICByZXR1cm4gaGFuZGxlcnM7XG59XG5cbi8qKlxuICogV3JhcHMgUnVubmFibGUgbWV0aG9kcyAoaW52b2tlLCBzdHJlYW0sIGJhdGNoKSB0byBpbmplY3QgU2VudHJ5IGNhbGxiYWNrcyBhdCByZXF1ZXN0IHRpbWVcbiAqIFVzZXMgYSBQcm94eSB0byBpbnRlcmNlcHQgbWV0aG9kIGNhbGxzIGFuZCBhdWdtZW50IHRoZSBvcHRpb25zLmNhbGxiYWNrc1xuICovXG5mdW5jdGlvbiB3cmFwUnVubmFibGVNZXRob2QoXG4gIG9yaWdpbmFsTWV0aG9kLFxuICBzZW50cnlIYW5kbGVyLFxuICBfbWV0aG9kTmFtZSxcbikge1xuICByZXR1cm4gbmV3IFByb3h5KG9yaWdpbmFsTWV0aG9kLCB7XG4gICAgYXBwbHkodGFyZ2V0LCB0aGlzQXJnLCBhcmdzKSB7XG4gICAgICAvLyBMYW5nQ2hhaW4gUnVubmFibGUgbWV0aG9kIHNpZ25hdHVyZXM6XG4gICAgICAvLyBpbnZva2UoaW5wdXQsIG9wdGlvbnM/KSAtIG9wdGlvbnMgY29udGFpbnMgY2FsbGJhY2tzXG4gICAgICAvLyBzdHJlYW0oaW5wdXQsIG9wdGlvbnM/KSAtIG9wdGlvbnMgY29udGFpbnMgY2FsbGJhY2tzXG4gICAgICAvLyBiYXRjaChpbnB1dHMsIG9wdGlvbnM/KSAtIG9wdGlvbnMgY29udGFpbnMgY2FsbGJhY2tzXG5cbiAgICAgIC8vIE9wdGlvbnMgaXMgdHlwaWNhbGx5IHRoZSBzZWNvbmQgYXJndW1lbnRcbiAgICAgIGNvbnN0IG9wdGlvbnNJbmRleCA9IDE7XG4gICAgICBsZXQgb3B0aW9ucyA9IGFyZ3Nbb3B0aW9uc0luZGV4XSA7XG5cbiAgICAgIC8vIElmIG9wdGlvbnMgZG9uJ3QgZXhpc3Qgb3IgYXJlbid0IGFuIG9iamVjdCwgY3JlYXRlIHRoZW1cbiAgICAgIGlmICghb3B0aW9ucyB8fCB0eXBlb2Ygb3B0aW9ucyAhPT0gJ29iamVjdCcgfHwgQXJyYXkuaXNBcnJheShvcHRpb25zKSkge1xuICAgICAgICBvcHRpb25zID0ge307XG4gICAgICAgIGFyZ3Nbb3B0aW9uc0luZGV4XSA9IG9wdGlvbnM7XG4gICAgICB9XG5cbiAgICAgIC8vIEluamVjdCBvdXIgY2FsbGJhY2sgaGFuZGxlciBpbnRvIG9wdGlvbnMuY2FsbGJhY2tzIChyZXF1ZXN0IHRpbWUgY2FsbGJhY2tzKVxuICAgICAgY29uc3QgZXhpc3RpbmdDYWxsYmFja3MgPSBvcHRpb25zLmNhbGxiYWNrcztcbiAgICAgIGNvbnN0IGF1Z21lbnRlZENhbGxiYWNrcyA9IGF1Z21lbnRDYWxsYmFja0hhbmRsZXJzKGV4aXN0aW5nQ2FsbGJhY2tzLCBzZW50cnlIYW5kbGVyKTtcbiAgICAgIG9wdGlvbnMuY2FsbGJhY2tzID0gYXVnbWVudGVkQ2FsbGJhY2tzO1xuXG4gICAgICAvLyBDYWxsIG9yaWdpbmFsIG1ldGhvZCB3aXRoIGF1Z21lbnRlZCBvcHRpb25zXG4gICAgICByZXR1cm4gUmVmbGVjdC5hcHBseSh0YXJnZXQsIHRoaXNBcmcsIGFyZ3MpO1xuICAgIH0sXG4gIH0pIDtcbn1cblxuLyoqXG4gKiBTZW50cnkgTGFuZ0NoYWluIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlMYW5nQ2hhaW5JbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBjb25zdHJ1Y3Rvcihjb25maWcgPSB7fSkge1xuICAgIHN1cGVyKCdAc2VudHJ5L2luc3RydW1lbnRhdGlvbi1sYW5nY2hhaW4nLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICogV2UgcGF0Y2ggdGhlIEJhc2VDaGF0TW9kZWwgY2xhc3MgbWV0aG9kcyB0byBpbmplY3QgY2FsbGJhY2tzXG4gICAqXG4gICAqIFdlIGhvb2sgaW50byBwcm92aWRlciBwYWNrYWdlcyAoQGxhbmdjaGFpbi9hbnRocm9waWMsIEBsYW5nY2hhaW4vb3BlbmFpLCBldGMuKVxuICAgKiBiZWNhdXNlIEBsYW5nY2hhaW4vY29yZSBpcyBvZnRlbiBidW5kbGVkIGFuZCBub3QgbG9hZGVkIGFzIGEgc2VwYXJhdGUgbW9kdWxlXG4gICAqL1xuICAgaW5pdCgpIHtcbiAgICBjb25zdCBtb2R1bGVzID0gW107XG5cbiAgICAvLyBIb29rIGludG8gY29tbW9uIExhbmdDaGFpbiBwcm92aWRlciBwYWNrYWdlc1xuICAgIGNvbnN0IHByb3ZpZGVyUGFja2FnZXMgPSBbXG4gICAgICAnQGxhbmdjaGFpbi9hbnRocm9waWMnLFxuICAgICAgJ0BsYW5nY2hhaW4vb3BlbmFpJyxcbiAgICAgICdAbGFuZ2NoYWluL2dvb2dsZS1nZW5haScsXG4gICAgICAnQGxhbmdjaGFpbi9taXN0cmFsYWknLFxuICAgICAgJ0BsYW5nY2hhaW4vZ29vZ2xlLXZlcnRleGFpJyxcbiAgICAgICdAbGFuZ2NoYWluL2dyb3EnLFxuICAgIF07XG5cbiAgICBmb3IgKGNvbnN0IHBhY2thZ2VOYW1lIG9mIHByb3ZpZGVyUGFja2FnZXMpIHtcbiAgICAgIC8vIEluIENKUywgTGFuZ0NoYWluIHBhY2thZ2VzIHJlLWV4cG9ydCBmcm9tIGRpc3QvaW5kZXguY2pzIGZpbGVzLlxuICAgICAgLy8gUGF0Y2hpbmcgb25seSB0aGUgcm9vdCBtb2R1bGUgc29tZXRpbWVzIG1pc3NlcyB0aGUgcmVhbCBpbXBsZW1lbnRhdGlvbiBvclxuICAgICAgLy8gZ2V0cyBvdmVyd3JpdHRlbiB3aGVuIHRoYXQgZmlsZSBpcyBsb2FkZWQuIFdlIGFkZCBhIGZpbGUtbGV2ZWwgcGF0Y2ggc28gdGhhdFxuICAgICAgLy8gX3BhdGNoIHJ1bnMgYWdhaW4gb24gdGhlIGNvbmNyZXRlIGltcGxlbWVudGF0aW9uXG4gICAgICBtb2R1bGVzLnB1c2goXG4gICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oXG4gICAgICAgICAgcGFja2FnZU5hbWUsXG4gICAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgICAgdGhpcy5fcGF0Y2guYmluZCh0aGlzKSxcbiAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZUZpbGUoXG4gICAgICAgICAgICAgIGAke3BhY2thZ2VOYW1lfS9kaXN0L2luZGV4LmNqc2AsXG4gICAgICAgICAgICAgIHN1cHBvcnRlZFZlcnNpb25zLFxuICAgICAgICAgICAgICB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICBdLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBIb29rIGludG8gbWFpbiAnbGFuZ2NoYWluJyBwYWNrYWdlIHRvIGNhdGNoIGluaXRDaGF0TW9kZWwgKHYxKylcbiAgICBtb2R1bGVzLnB1c2goXG4gICAgICBuZXcgaW5zdHJ1bWVudGF0aW9uLkluc3RydW1lbnRhdGlvbk5vZGVNb2R1bGVEZWZpbml0aW9uKFxuICAgICAgICAnbGFuZ2NoYWluJyxcbiAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgIHRoaXMuX3BhdGNoLmJpbmQodGhpcyksXG4gICAgICAgIGV4cG9ydHMkMSA9PiBleHBvcnRzJDEsXG4gICAgICAgIFtcbiAgICAgICAgICAvLyBUbyBjYXRjaCB0aGUgQ0pTIGJ1aWxkIHRoYXQgY29udGFpbnMgQ29uZmlndXJhYmxlTW9kZWwgLyBpbml0Q2hhdE1vZGVsIGZvciB2MVxuICAgICAgICAgIG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZUZpbGUoXG4gICAgICAgICAgICAnbGFuZ2NoYWluL2Rpc3QvY2hhdF9tb2RlbHMvdW5pdmVyc2FsLmNqcycsXG4gICAgICAgICAgICBzdXBwb3J0ZWRWZXJzaW9ucyxcbiAgICAgICAgICAgIHRoaXMuX3BhdGNoLmJpbmQodGhpcyksXG4gICAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICApLFxuICAgICk7XG5cbiAgICByZXR1cm4gbW9kdWxlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDb3JlIHBhdGNoIGxvZ2ljIC0gcGF0Y2hlcyBjaGF0IG1vZGVsIG1ldGhvZHMgdG8gaW5qZWN0IFNlbnRyeSBjYWxsYmFja3NcbiAgICogVGhpcyBpcyBjYWxsZWQgd2hlbiBhIExhbmdDaGFpbiBwcm92aWRlciBwYWNrYWdlIGlzIGxvYWRlZFxuICAgKi9cbiAgIF9wYXRjaChleHBvcnRzJDEpIHtcbiAgICAvLyBTa2lwIEFJIHByb3ZpZGVyIHdyYXBwaW5nIG5vdyB0aGF0IExhbmdDaGFpbiBpcyBhY3R1YWxseSBiZWluZyB1c2VkXG4gICAgLy8gVGhpcyBwcmV2ZW50cyBkdXBsaWNhdGUgc3BhbnMgZnJvbSBBbnRocm9waWMvT3BlbkFJL0dvb2dsZUdlbkFJIHN0YW5kYWxvbmUgaW50ZWdyYXRpb25zXG4gICAgY29yZS5fSU5URVJOQUxfc2tpcEFpUHJvdmlkZXJXcmFwcGluZyhbXG4gICAgICBjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICAgICAgY29yZS5BTlRIUk9QSUNfQUlfSU5URUdSQVRJT05fTkFNRSxcbiAgICAgIGNvcmUuR09PR0xFX0dFTkFJX0lOVEVHUkFUSU9OX05BTUUsXG4gICAgXSk7XG5cbiAgICAvLyBDcmVhdGUgYSBzaGFyZWQgaGFuZGxlciBpbnN0YW5jZVxuICAgIGNvbnN0IHNlbnRyeUhhbmRsZXIgPSBjb3JlLmNyZWF0ZUxhbmdDaGFpbkNhbGxiYWNrSGFuZGxlcih0aGlzLmdldENvbmZpZygpKTtcblxuICAgIC8vIFBhdGNoIFJ1bm5hYmxlIG1ldGhvZHMgdG8gaW5qZWN0IGNhbGxiYWNrcyBhdCByZXF1ZXN0IHRpbWVcbiAgICAvLyBUaGlzIGRpcmVjdGx5IG1hbmlwdWxhdGVzIG9wdGlvbnMuY2FsbGJhY2tzIHRoYXQgTGFuZ0NoYWluIHVzZXNcbiAgICB0aGlzLl9wYXRjaFJ1bm5hYmxlTWV0aG9kcyhleHBvcnRzJDEsIHNlbnRyeUhhbmRsZXIpO1xuXG4gICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXRjaGVzIGNoYXQgbW9kZWwgbWV0aG9kcyAoaW52b2tlLCBzdHJlYW0sIGJhdGNoKSB0byBpbmplY3QgU2VudHJ5IGNhbGxiYWNrc1xuICAgKiBGaW5kcyBhIGNoYXQgbW9kZWwgY2xhc3MgZnJvbSB0aGUgcHJvdmlkZXIgcGFja2FnZSBleHBvcnRzIGFuZCBwYXRjaGVzIGl0cyBwcm90b3R5cGUgbWV0aG9kc1xuICAgKi9cbiAgIF9wYXRjaFJ1bm5hYmxlTWV0aG9kcyhleHBvcnRzJDEsIHNlbnRyeUhhbmRsZXIpIHtcbiAgICAvLyBLbm93biBjaGF0IG1vZGVsIGNsYXNzIG5hbWVzIGZvciBlYWNoIHByb3ZpZGVyXG4gICAgY29uc3Qga25vd25DaGF0TW9kZWxOYW1lcyA9IFtcbiAgICAgICdDaGF0QW50aHJvcGljJyxcbiAgICAgICdDaGF0T3BlbkFJJyxcbiAgICAgICdDaGF0R29vZ2xlR2VuZXJhdGl2ZUFJJyxcbiAgICAgICdDaGF0TWlzdHJhbEFJJyxcbiAgICAgICdDaGF0VmVydGV4QUknLFxuICAgICAgJ0NoYXRHcm9xJyxcbiAgICAgICdDb25maWd1cmFibGVNb2RlbCcsXG4gICAgXTtcblxuICAgIGNvbnN0IGV4cG9ydHNUb1BhdGNoID0gKGV4cG9ydHMkMS51bml2ZXJzYWxfZXhwb3J0cyA/PyBleHBvcnRzJDEpIDtcblxuICAgIGNvbnN0IGNoYXRNb2RlbENsYXNzID0gT2JqZWN0LnZhbHVlcyhleHBvcnRzVG9QYXRjaCkuZmluZChleHAgPT4ge1xuICAgICAgcmV0dXJuIHR5cGVvZiBleHAgPT09ICdmdW5jdGlvbicgJiYga25vd25DaGF0TW9kZWxOYW1lcy5pbmNsdWRlcyhleHAubmFtZSk7XG4gICAgfSkgO1xuXG4gICAgaWYgKCFjaGF0TW9kZWxDbGFzcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFBhdGNoIGRpcmVjdGx5IG9uIGNoYXRNb2RlbENsYXNzLnByb3RvdHlwZVxuICAgIGNvbnN0IHRhcmdldFByb3RvID0gY2hhdE1vZGVsQ2xhc3MucHJvdG90eXBlIDtcblxuICAgIC8vIFNraXAgaWYgYWxyZWFkeSBwYXRjaGVkIChib3RoIGZpbGUtbGV2ZWwgYW5kIG1vZHVsZS1sZXZlbCBob29rcyByZXNvbHZlIHRvIHRoZSBzYW1lIHByb3RvdHlwZSlcbiAgICBpZiAodGFyZ2V0UHJvdG8uX19zZW50cnlfcGF0Y2hlZF9fKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRhcmdldFByb3RvLl9fc2VudHJ5X3BhdGNoZWRfXyA9IHRydWU7XG5cbiAgICAvLyBQYXRjaCB0aGUgbWV0aG9kcyAoaW52b2tlLCBzdHJlYW0sIGJhdGNoKVxuICAgIC8vIEFsbCBjaGF0IG1vZGVsIGluc3RhbmNlcyB3aWxsIGluaGVyaXQgdGhlc2UgcGF0Y2hlZCBtZXRob2RzXG4gICAgY29uc3QgbWV0aG9kc1RvUGF0Y2ggPSBbJ2ludm9rZScsICdzdHJlYW0nLCAnYmF0Y2gnXSA7XG5cbiAgICBmb3IgKGNvbnN0IG1ldGhvZE5hbWUgb2YgbWV0aG9kc1RvUGF0Y2gpIHtcbiAgICAgIGNvbnN0IG1ldGhvZCA9IHRhcmdldFByb3RvW21ldGhvZE5hbWVdO1xuICAgICAgaWYgKHR5cGVvZiBtZXRob2QgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGFyZ2V0UHJvdG9bbWV0aG9kTmFtZV0gPSB3cmFwUnVubmFibGVNZXRob2QoXG4gICAgICAgICAgbWV0aG9kICxcbiAgICAgICAgICBzZW50cnlIYW5kbGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0cy5TZW50cnlMYW5nQ2hhaW5JbnN0cnVtZW50YXRpb24gPSBTZW50cnlMYW5nQ2hhaW5JbnN0cnVtZW50YXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langchain/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js":
/*!*****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js ***!
\*****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js\");\n\nconst instrumentLangGraph = nodeCore.generateInstrumentOnce(\n core.LANGGRAPH_INTEGRATION_NAME,\n options => new instrumentation.SentryLangGraphInstrumentation(options),\n);\n\nconst _langGraphIntegration = ((options = {}) => {\n return {\n name: core.LANGGRAPH_INTEGRATION_NAME,\n setupOnce() {\n instrumentLangGraph(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for LangGraph.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments LangGraph StateGraph and compiled graph instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.langGraphIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record input messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.langGraphIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.langGraphIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n * ## Captured Operations\n *\n * The integration captures the following LangGraph operations:\n * - **Agent Creation** (`StateGraph.compile()`) - Creates a `gen_ai.create_agent` span\n * - **Agent Invocation** (`CompiledGraph.invoke()`) - Creates a `gen_ai.invoke_agent` span\n *\n * ## Captured Data\n *\n * When `recordInputs` and `recordOutputs` are enabled, the integration captures:\n * - Input messages from the graph state\n * - Output messages and LLM responses\n * - Tool calls made during agent execution\n * - Agent and graph names\n * - Available tools configured in the graph\n *\n */\nconst langGraphIntegration = core.defineIntegration(_langGraphIntegration);\n\nexports.instrumentLangGraph = instrumentLangGraph;\nexports.langGraphIntegration = langGraphIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2dyYXBoL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsbUtBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSw0Q0FBNEM7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsMkJBQTJCO0FBQzNCLDRCQUE0QjtBQUM1QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9sYW5nZ3JhcGgvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRMYW5nR3JhcGggPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBjb3JlLkxBTkdHUkFQSF9JTlRFR1JBVElPTl9OQU1FLFxuICBvcHRpb25zID0+IG5ldyBpbnN0cnVtZW50YXRpb24uU2VudHJ5TGFuZ0dyYXBoSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX2xhbmdHcmFwaEludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLkxBTkdHUkFQSF9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRMYW5nR3JhcGgob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgTGFuZ0dyYXBoLlxuICpcbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgZW5hYmxlZCBieSBkZWZhdWx0LlxuICpcbiAqIFdoZW4gY29uZmlndXJlZCwgdGhpcyBpbnRlZ3JhdGlvbiBhdXRvbWF0aWNhbGx5IGluc3RydW1lbnRzIExhbmdHcmFwaCBTdGF0ZUdyYXBoIGFuZCBjb21waWxlZCBncmFwaCBpbnN0YW5jZXNcbiAqIHRvIGNhcHR1cmUgdGVsZW1ldHJ5IGRhdGEgZm9sbG93aW5nIE9wZW5UZWxlbWV0cnkgU2VtYW50aWMgQ29udmVudGlvbnMgZm9yIEdlbmVyYXRpdmUgQUkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGltcG9ydCAqIGFzIFNlbnRyeSBmcm9tICdAc2VudHJ5L25vZGUnO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmxhbmdHcmFwaEludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiAjIyBPcHRpb25zXG4gKlxuICogLSBgcmVjb3JkSW5wdXRzYDogV2hldGhlciB0byByZWNvcmQgaW5wdXQgbWVzc2FnZXMgKGRlZmF1bHQ6IHJlc3BlY3RzIGBzZW5kRGVmYXVsdFBpaWAgY2xpZW50IG9wdGlvbilcbiAqIC0gYHJlY29yZE91dHB1dHNgOiBXaGV0aGVyIHRvIHJlY29yZCByZXNwb25zZSB0ZXh0IChkZWZhdWx0OiByZXNwZWN0cyBgc2VuZERlZmF1bHRQaWlgIGNsaWVudCBvcHRpb24pXG4gKlxuICogIyMjIERlZmF1bHQgQmVoYXZpb3JcbiAqXG4gKiBCeSBkZWZhdWx0LCB0aGUgaW50ZWdyYXRpb24gd2lsbDpcbiAqIC0gUmVjb3JkIGlucHV0cyBhbmQgb3V0cHV0cyBPTkxZIGlmIGBzZW5kRGVmYXVsdFBpaWAgaXMgc2V0IHRvIGB0cnVlYCBpbiB5b3VyIFNlbnRyeSBjbGllbnQgb3B0aW9uc1xuICogLSBPdGhlcndpc2UsIGlucHV0cyBhbmQgb3V0cHV0cyBhcmUgTk9UIHJlY29yZGVkIHVubGVzcyBleHBsaWNpdGx5IGVuYWJsZWRcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogLy8gUmVjb3JkIGlucHV0cyBhbmQgb3V0cHV0cyB3aGVuIHNlbmREZWZhdWx0UGlpIGlzIGZhbHNlXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5sYW5nR3JhcGhJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IHRydWUsXG4gKiAgICAgICByZWNvcmRPdXRwdXRzOiB0cnVlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICpcbiAqIC8vIE5ldmVyIHJlY29yZCBpbnB1dHMvb3V0cHV0cyByZWdhcmRsZXNzIG9mIHNlbmREZWZhdWx0UGlpXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIHNlbmREZWZhdWx0UGlpOiB0cnVlLFxuICogICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICBTZW50cnkubGFuZ0dyYXBoSW50ZWdyYXRpb24oe1xuICogICAgICAgcmVjb3JkSW5wdXRzOiBmYWxzZSxcbiAqICAgICAgIHJlY29yZE91dHB1dHM6IGZhbHNlXG4gKiAgICAgfSlcbiAqICAgXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogIyMgQ2FwdHVyZWQgT3BlcmF0aW9uc1xuICpcbiAqIFRoZSBpbnRlZ3JhdGlvbiBjYXB0dXJlcyB0aGUgZm9sbG93aW5nIExhbmdHcmFwaCBvcGVyYXRpb25zOlxuICogLSAqKkFnZW50IENyZWF0aW9uKiogKGBTdGF0ZUdyYXBoLmNvbXBpbGUoKWApIC0gQ3JlYXRlcyBhIGBnZW5fYWkuY3JlYXRlX2FnZW50YCBzcGFuXG4gKiAtICoqQWdlbnQgSW52b2NhdGlvbioqIChgQ29tcGlsZWRHcmFwaC5pbnZva2UoKWApIC0gQ3JlYXRlcyBhIGBnZW5fYWkuaW52b2tlX2FnZW50YCBzcGFuXG4gKlxuICogIyMgQ2FwdHVyZWQgRGF0YVxuICpcbiAqIFdoZW4gYHJlY29yZElucHV0c2AgYW5kIGByZWNvcmRPdXRwdXRzYCBhcmUgZW5hYmxlZCwgdGhlIGludGVncmF0aW9uIGNhcHR1cmVzOlxuICogLSBJbnB1dCBtZXNzYWdlcyBmcm9tIHRoZSBncmFwaCBzdGF0ZVxuICogLSBPdXRwdXQgbWVzc2FnZXMgYW5kIExMTSByZXNwb25zZXNcbiAqIC0gVG9vbCBjYWxscyBtYWRlIGR1cmluZyBhZ2VudCBleGVjdXRpb25cbiAqIC0gQWdlbnQgYW5kIGdyYXBoIG5hbWVzXG4gKiAtIEF2YWlsYWJsZSB0b29scyBjb25maWd1cmVkIGluIHRoZSBncmFwaFxuICpcbiAqL1xuY29uc3QgbGFuZ0dyYXBoSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9sYW5nR3JhcGhJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudExhbmdHcmFwaCA9IGluc3RydW1lbnRMYW5nR3JhcGg7XG5leHBvcnRzLmxhbmdHcmFwaEludGVncmF0aW9uID0gbGFuZ0dyYXBoSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js":
/*!***************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js ***!
\***************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=0.0.0 <2.0.0'];\n\n/**\n * Sentry LangGraph instrumentation using OpenTelemetry.\n */\nclass SentryLangGraphInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-langgraph', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n '@langchain/langgraph',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n [\n new instrumentation.InstrumentationNodeModuleFile(\n /**\n * In CJS, LangGraph packages re-export from dist/index.cjs files.\n * Patching only the root module sometimes misses the real implementation or\n * gets overwritten when that file is loaded. We add a file-level patch so that\n * _patch runs again on the concrete implementation\n */\n '@langchain/langgraph/dist/index.cjs',\n supportedVersions,\n this._patch.bind(this),\n exports$1 => exports$1,\n ),\n ],\n );\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the LangGraph module.\n */\n _patch(exports$1) {\n // Patch StateGraph.compile to instrument both compile() and invoke()\n if (exports$1.StateGraph && typeof exports$1.StateGraph === 'function') {\n core.instrumentLangGraph(\n exports$1.StateGraph.prototype ,\n this.getConfig(),\n );\n }\n\n return exports$1;\n }\n}\n\nexports.SentryLangGraphInstrumentation = SentryLangGraphInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2dyYXBoL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQSxzQ0FBc0M7QUFDdEMiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbGFuZ2dyYXBoL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuXG5jb25zdCBzdXBwb3J0ZWRWZXJzaW9ucyA9IFsnPj0wLjAuMCA8Mi4wLjAnXTtcblxuLyoqXG4gKiBTZW50cnkgTGFuZ0dyYXBoIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlMYW5nR3JhcGhJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBjb25zdHJ1Y3Rvcihjb25maWcgPSB7fSkge1xuICAgIHN1cGVyKCdAc2VudHJ5L2luc3RydW1lbnRhdGlvbi1sYW5nZ3JhcGgnLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oXG4gICAgICAnQGxhbmdjaGFpbi9sYW5nZ3JhcGgnLFxuICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpLFxuICAgICAgZXhwb3J0cyQxID0+IGV4cG9ydHMkMSxcbiAgICAgIFtcbiAgICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRmlsZShcbiAgICAgICAgICAvKipcbiAgICAgICAgICAgKiBJbiBDSlMsIExhbmdHcmFwaCBwYWNrYWdlcyByZS1leHBvcnQgZnJvbSBkaXN0L2luZGV4LmNqcyBmaWxlcy5cbiAgICAgICAgICAgKiBQYXRjaGluZyBvbmx5IHRoZSByb290IG1vZHVsZSBzb21ldGltZXMgbWlzc2VzIHRoZSByZWFsIGltcGxlbWVudGF0aW9uIG9yXG4gICAgICAgICAgICogZ2V0cyBvdmVyd3JpdHRlbiB3aGVuIHRoYXQgZmlsZSBpcyBsb2FkZWQuIFdlIGFkZCBhIGZpbGUtbGV2ZWwgcGF0Y2ggc28gdGhhdFxuICAgICAgICAgICAqIF9wYXRjaCBydW5zIGFnYWluIG9uIHRoZSBjb25jcmV0ZSBpbXBsZW1lbnRhdGlvblxuICAgICAgICAgICAqL1xuICAgICAgICAgICdAbGFuZ2NoYWluL2xhbmdncmFwaC9kaXN0L2luZGV4LmNqcycsXG4gICAgICAgICAgc3VwcG9ydGVkVmVyc2lvbnMsXG4gICAgICAgICAgdGhpcy5fcGF0Y2guYmluZCh0aGlzKSxcbiAgICAgICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICAgICApLFxuICAgICAgXSxcbiAgICApO1xuICAgIHJldHVybiBtb2R1bGU7XG4gIH1cblxuICAvKipcbiAgICogQ29yZSBwYXRjaCBsb2dpYyBhcHBseWluZyBpbnN0cnVtZW50YXRpb24gdG8gdGhlIExhbmdHcmFwaCBtb2R1bGUuXG4gICAqL1xuICAgX3BhdGNoKGV4cG9ydHMkMSkge1xuICAgIC8vIFBhdGNoIFN0YXRlR3JhcGguY29tcGlsZSB0byBpbnN0cnVtZW50IGJvdGggY29tcGlsZSgpIGFuZCBpbnZva2UoKVxuICAgIGlmIChleHBvcnRzJDEuU3RhdGVHcmFwaCAmJiB0eXBlb2YgZXhwb3J0cyQxLlN0YXRlR3JhcGggPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvcmUuaW5zdHJ1bWVudExhbmdHcmFwaChcbiAgICAgICAgZXhwb3J0cyQxLlN0YXRlR3JhcGgucHJvdG90eXBlICxcbiAgICAgICAgdGhpcy5nZXRDb25maWcoKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgfVxufVxuXG5leHBvcnRzLlNlbnRyeUxhbmdHcmFwaEluc3RydW1lbnRhdGlvbiA9IFNlbnRyeUxhbmdHcmFwaEluc3RydW1lbnRhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluc3RydW1lbnRhdGlvbi5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/langgraph/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js":
/*!*************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js ***!
\*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationLruMemoizer = __webpack_require__(/*! @opentelemetry/instrumentation-lru-memoizer */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-lru-memoizer@0.58.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-lru-memoizer/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'LruMemoizer';\n\nconst instrumentLruMemoizer = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationLruMemoizer.LruMemoizerInstrumentation());\n\nconst _lruMemoizerIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentLruMemoizer();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [lru-memoizer](https://www.npmjs.com/package/lru-memoizer) library.\n *\n * For more information, see the [`lruMemoizerIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/lrumemoizer/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.lruMemoizerIntegration()],\n * });\n */\nconst lruMemoizerIntegration = core.defineIntegration(_lruMemoizerIntegration);\n\nexports.instrumentLruMemoizer = instrumentLruMemoizer;\nexports.lruMemoizerIntegration = lruMemoizerIntegration;\n//# sourceMappingURL=lrumemoizer.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbHJ1bWVtb2l6ZXIuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsbUNBQW1DLG1CQUFPLENBQUMsdU9BQTZDO0FBQ3hGLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTs7QUFFQSw2QkFBNkI7QUFDN0IsOEJBQThCO0FBQzlCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL2xydW1lbW9pemVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25McnVNZW1vaXplciA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbi1scnUtbWVtb2l6ZXInKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdMcnVNZW1vaXplcic7XG5cbmNvbnN0IGluc3RydW1lbnRMcnVNZW1vaXplciA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbkxydU1lbW9pemVyLkxydU1lbW9pemVySW5zdHJ1bWVudGF0aW9uKCkpO1xuXG5jb25zdCBfbHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbiA9ICgoKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50THJ1TWVtb2l6ZXIoKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2xydS1tZW1vaXplcl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbHJ1LW1lbW9pemVyKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgbHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9scnVtZW1vaXplci8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5LmxydU1lbW9pemVySW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqL1xuY29uc3QgbHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX2xydU1lbW9pemVySW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmluc3RydW1lbnRMcnVNZW1vaXplciA9IGluc3RydW1lbnRMcnVNZW1vaXplcjtcbmV4cG9ydHMubHJ1TWVtb2l6ZXJJbnRlZ3JhdGlvbiA9IGxydU1lbW9pemVySW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1scnVtZW1vaXplci5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/lrumemoizer.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMongodb = __webpack_require__(/*! @opentelemetry/instrumentation-mongodb */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-mongodb@0.67.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mongodb/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mongo';\n\nconst instrumentMongo = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationMongodb.MongoDBInstrumentation({\n dbStatementSerializer: _defaultDbStatementSerializer,\n responseHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.mongo');\n },\n }),\n);\n\n/**\n * Replaces values in document with '?', hiding PII and helping grouping.\n */\nfunction _defaultDbStatementSerializer(commandObj) {\n const resultObj = _scrubStatement(commandObj);\n return JSON.stringify(resultObj);\n}\n\nfunction _scrubStatement(value) {\n if (Array.isArray(value)) {\n return value.map(element => _scrubStatement(element));\n }\n\n if (isCommandObj(value)) {\n const initial = {};\n return Object.entries(value)\n .map(([key, element]) => [key, _scrubStatement(element)])\n .reduce((prev, current) => {\n if (isCommandEntry(current)) {\n prev[current[0]] = current[1];\n }\n return prev;\n }, initial);\n }\n\n // A value like string or number, possible contains PII, scrub it\n return '?';\n}\n\nfunction isCommandObj(value) {\n return typeof value === 'object' && value !== null && !isBuffer(value);\n}\n\nfunction isBuffer(value) {\n let isBuffer = false;\n if (typeof Buffer !== 'undefined') {\n isBuffer = Buffer.isBuffer(value);\n }\n return isBuffer;\n}\n\nfunction isCommandEntry(value) {\n return Array.isArray(value);\n}\n\nconst _mongoIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMongo();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mongodb](https://www.npmjs.com/package/mongodb) library.\n *\n * For more information, see the [`mongoIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mongo/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mongoIntegration()],\n * });\n * ```\n */\nconst mongoIntegration = core.defineIntegration(_mongoIntegration);\n\nexports._defaultDbStatementSerializer = _defaultDbStatementSerializer;\nexports.instrumentMongo = instrumentMongo;\nexports.mongoIntegration = mongoIntegration;\n//# sourceMappingURL=mongo.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ28uanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsK0JBQStCLG1CQUFPLENBQUMsd05BQXdDO0FBQy9FLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEscUNBQXFDO0FBQ3JDLHVCQUF1QjtBQUN2Qix3QkFBd0I7QUFDeEIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ28uanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbk1vbmdvZGIgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbW9uZ29kYicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ01vbmdvJztcblxuY29uc3QgaW5zdHJ1bWVudE1vbmdvID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShcbiAgSU5URUdSQVRJT05fTkFNRSxcbiAgKCkgPT5cbiAgICBuZXcgaW5zdHJ1bWVudGF0aW9uTW9uZ29kYi5Nb25nb0RCSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIGRiU3RhdGVtZW50U2VyaWFsaXplcjogX2RlZmF1bHREYlN0YXRlbWVudFNlcmlhbGl6ZXIsXG4gICAgICByZXNwb25zZUhvb2soc3Bhbikge1xuICAgICAgICBub2RlQ29yZS5hZGRPcmlnaW5Ub1NwYW4oc3BhbiwgJ2F1dG8uZGIub3RlbC5tb25nbycpO1xuICAgICAgfSxcbiAgICB9KSxcbik7XG5cbi8qKlxuICogUmVwbGFjZXMgdmFsdWVzIGluIGRvY3VtZW50IHdpdGggJz8nLCBoaWRpbmcgUElJIGFuZCBoZWxwaW5nIGdyb3VwaW5nLlxuICovXG5mdW5jdGlvbiBfZGVmYXVsdERiU3RhdGVtZW50U2VyaWFsaXplcihjb21tYW5kT2JqKSB7XG4gIGNvbnN0IHJlc3VsdE9iaiA9IF9zY3J1YlN0YXRlbWVudChjb21tYW5kT2JqKTtcbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHJlc3VsdE9iaik7XG59XG5cbmZ1bmN0aW9uIF9zY3J1YlN0YXRlbWVudCh2YWx1ZSkge1xuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUubWFwKGVsZW1lbnQgPT4gX3NjcnViU3RhdGVtZW50KGVsZW1lbnQpKTtcbiAgfVxuXG4gIGlmIChpc0NvbW1hbmRPYmoodmFsdWUpKSB7XG4gICAgY29uc3QgaW5pdGlhbCA9IHt9O1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyh2YWx1ZSlcbiAgICAgIC5tYXAoKFtrZXksIGVsZW1lbnRdKSA9PiBba2V5LCBfc2NydWJTdGF0ZW1lbnQoZWxlbWVudCldKVxuICAgICAgLnJlZHVjZSgocHJldiwgY3VycmVudCkgPT4ge1xuICAgICAgICBpZiAoaXNDb21tYW5kRW50cnkoY3VycmVudCkpIHtcbiAgICAgICAgICBwcmV2W2N1cnJlbnRbMF1dID0gY3VycmVudFsxXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcHJldjtcbiAgICAgIH0sIGluaXRpYWwpO1xuICB9XG5cbiAgLy8gQSB2YWx1ZSBsaWtlIHN0cmluZyBvciBudW1iZXIsIHBvc3NpYmxlIGNvbnRhaW5zIFBJSSwgc2NydWIgaXRcbiAgcmV0dXJuICc/Jztcbn1cblxuZnVuY3Rpb24gaXNDb21tYW5kT2JqKHZhbHVlKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICE9PSBudWxsICYmICFpc0J1ZmZlcih2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIGlzQnVmZmVyKHZhbHVlKSB7XG4gIGxldCBpc0J1ZmZlciA9IGZhbHNlO1xuICBpZiAodHlwZW9mIEJ1ZmZlciAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBpc0J1ZmZlciA9IEJ1ZmZlci5pc0J1ZmZlcih2YWx1ZSk7XG4gIH1cbiAgcmV0dXJuIGlzQnVmZmVyO1xufVxuXG5mdW5jdGlvbiBpc0NvbW1hbmRFbnRyeSh2YWx1ZSkge1xuICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSk7XG59XG5cbmNvbnN0IF9tb25nb0ludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRNb25nbygpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbbW9uZ29kYl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbW9uZ29kYikgbGlicmFyeS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYG1vbmdvSW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvbW9uZ28vKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogIGludGVncmF0aW9uczogW1NlbnRyeS5tb25nb0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgbW9uZ29JbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX21vbmdvSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLl9kZWZhdWx0RGJTdGF0ZW1lbnRTZXJpYWxpemVyID0gX2RlZmF1bHREYlN0YXRlbWVudFNlcmlhbGl6ZXI7XG5leHBvcnRzLmluc3RydW1lbnRNb25nbyA9IGluc3RydW1lbnRNb25nbztcbmV4cG9ydHMubW9uZ29JbnRlZ3JhdGlvbiA9IG1vbmdvSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1tb25nby5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongo.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMongoose = __webpack_require__(/*! @opentelemetry/instrumentation-mongoose */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-mongoose@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mongoose/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mongoose';\n\nconst instrumentMongoose = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationMongoose.MongooseInstrumentation({\n responseHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.mongoose');\n },\n }),\n);\n\nconst _mongooseIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMongoose();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mongoose](https://www.npmjs.com/package/mongoose) library.\n *\n * For more information, see the [`mongooseIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mongoose/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mongooseIntegration()],\n * });\n * ```\n */\nconst mongooseIntegration = core.defineIntegration(_mongooseIntegration);\n\nexports.instrumentMongoose = instrumentMongoose;\nexports.mongooseIntegration = mongooseIntegration;\n//# sourceMappingURL=mongoose.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbW9uZ29vc2UuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsZ0NBQWdDLG1CQUFPLENBQUMsMk5BQXlDO0FBQ2pGLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUCxLQUFLO0FBQ0w7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEsMEJBQTBCO0FBQzFCLDJCQUEyQjtBQUMzQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9tb25nb29zZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uTW9uZ29vc2UgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbW9uZ29vc2UnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdNb25nb29zZSc7XG5cbmNvbnN0IGluc3RydW1lbnRNb25nb29zZSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+XG4gICAgbmV3IGluc3RydW1lbnRhdGlvbk1vbmdvb3NlLk1vbmdvb3NlSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIHJlc3BvbnNlSG9vayhzcGFuKSB7XG4gICAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5kYi5vdGVsLm1vbmdvb3NlJyk7XG4gICAgICB9LFxuICAgIH0pLFxuKTtcblxuY29uc3QgX21vbmdvb3NlSW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudE1vbmdvb3NlKCk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFttb25nb29zZV0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbW9uZ29vc2UpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Btb25nb29zZUludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL21vbmdvb3NlLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkubW9uZ29vc2VJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IG1vbmdvb3NlSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9tb25nb29zZUludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50TW9uZ29vc2UgPSBpbnN0cnVtZW50TW9uZ29vc2U7XG5leHBvcnRzLm1vbmdvb3NlSW50ZWdyYXRpb24gPSBtb25nb29zZUludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bW9uZ29vc2UuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mongoose.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMysql = __webpack_require__(/*! @opentelemetry/instrumentation-mysql */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-mysql@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mysql/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mysql';\n\nconst instrumentMysql = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationMysql.MySQLInstrumentation({}));\n\nconst _mysqlIntegration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMysql();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mysql](https://www.npmjs.com/package/mysql) library.\n *\n * For more information, see the [`mysqlIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mysql/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mysqlIntegration()],\n * });\n * ```\n */\nconst mysqlIntegration = core.defineIntegration(_mysqlIntegration);\n\nexports.instrumentMysql = instrumentMysql;\nexports.mysqlIntegration = mysqlIntegration;\n//# sourceMappingURL=mysql.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbXlzcWwuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsNkJBQTZCLG1CQUFPLENBQUMsa05BQXNDO0FBQzNFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBLGdJQUFnSTs7QUFFaEk7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEsdUJBQXVCO0FBQ3ZCLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9teXNxbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgaW5zdHJ1bWVudGF0aW9uTXlzcWwgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbXlzcWwnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdNeXNxbCc7XG5cbmNvbnN0IGluc3RydW1lbnRNeXNxbCA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbk15c3FsLk15U1FMSW5zdHJ1bWVudGF0aW9uKHt9KSk7XG5cbmNvbnN0IF9teXNxbEludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRNeXNxbCgpO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbbXlzcWxdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL215c3FsKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgbXlzcWxJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9teXNxbC8pLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBjb25zdCBTZW50cnkgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUnKTtcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgaW50ZWdyYXRpb25zOiBbU2VudHJ5Lm15c3FsSW50ZWdyYXRpb24oKV0sXG4gKiB9KTtcbiAqIGBgYFxuICovXG5jb25zdCBteXNxbEludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfbXlzcWxJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudE15c3FsID0gaW5zdHJ1bWVudE15c3FsO1xuZXhwb3J0cy5teXNxbEludGVncmF0aW9uID0gbXlzcWxJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW15c3FsLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationMysql2 = __webpack_require__(/*! @opentelemetry/instrumentation-mysql2 */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-mysql2@0.60.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-mysql2/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Mysql2';\n\nconst instrumentMysql2 = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n () =>\n new instrumentationMysql2.MySQL2Instrumentation({\n responseHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.mysql2');\n },\n }),\n);\n\nconst _mysql2Integration = (() => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentMysql2();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [mysql2](https://www.npmjs.com/package/mysql2) library.\n *\n * For more information, see the [`mysql2Integration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/mysql2/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.mysqlIntegration()],\n * });\n * ```\n */\nconst mysql2Integration = core.defineIntegration(_mysql2Integration);\n\nexports.instrumentMysql2 = instrumentMysql2;\nexports.mysql2Integration = mysql2Integration;\n//# sourceMappingURL=mysql2.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbXlzcWwyLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLDhCQUE4QixtQkFBTyxDQUFDLHFOQUF1QztBQUM3RSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1COztBQUU1Qzs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLHdCQUF3QjtBQUN4Qix5QkFBeUI7QUFDekIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvbXlzcWwyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25NeXNxbDIgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24tbXlzcWwyJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnTXlzcWwyJztcblxuY29uc3QgaW5zdHJ1bWVudE15c3FsMiA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gICgpID0+XG4gICAgbmV3IGluc3RydW1lbnRhdGlvbk15c3FsMi5NeVNRTDJJbnN0cnVtZW50YXRpb24oe1xuICAgICAgcmVzcG9uc2VIb29rKHNwYW4pIHtcbiAgICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmRiLm90ZWwubXlzcWwyJyk7XG4gICAgICB9LFxuICAgIH0pLFxuKTtcblxuY29uc3QgX215c3FsMkludGVncmF0aW9uID0gKCgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBJTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRNeXNxbDIoKTtcbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW215c3FsMl0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvbXlzcWwyKSBsaWJyYXJ5LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgbXlzcWwySW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvbXlzcWwyLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkubXlzcWxJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IG15c3FsMkludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfbXlzcWwySW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmluc3RydW1lbnRNeXNxbDIgPSBpbnN0cnVtZW50TXlzcWwyO1xuZXhwb3J0cy5teXNxbDJJbnRlZ3JhdGlvbiA9IG15c3FsMkludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bXlzcWwyLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/mysql2.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js\");\n\nconst instrumentOpenAi = nodeCore.generateInstrumentOnce(\n core.OPENAI_INTEGRATION_NAME,\n options => new instrumentation.SentryOpenAiInstrumentation(options),\n);\n\nconst _openAiIntegration = ((options = {}) => {\n return {\n name: core.OPENAI_INTEGRATION_NAME,\n setupOnce() {\n instrumentOpenAi(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the OpenAI SDK.\n *\n * This integration is enabled by default.\n *\n * When configured, this integration automatically instruments OpenAI SDK client instances\n * to capture telemetry data following OpenTelemetry Semantic Conventions for Generative AI.\n *\n * @example\n * ```javascript\n * import * as Sentry from '@sentry/node';\n *\n * Sentry.init({\n * integrations: [Sentry.openAIIntegration()],\n * });\n * ```\n *\n * ## Options\n *\n * - `recordInputs`: Whether to record prompt messages (default: respects `sendDefaultPii` client option)\n * - `recordOutputs`: Whether to record response text (default: respects `sendDefaultPii` client option)\n *\n * ### Default Behavior\n *\n * By default, the integration will:\n * - Record inputs and outputs ONLY if `sendDefaultPii` is set to `true` in your Sentry client options\n * - Otherwise, inputs and outputs are NOT recorded unless explicitly enabled\n *\n * @example\n * ```javascript\n * // Record inputs and outputs when sendDefaultPii is false\n * Sentry.init({\n * integrations: [\n * Sentry.openAIIntegration({\n * recordInputs: true,\n * recordOutputs: true\n * })\n * ],\n * });\n *\n * // Never record inputs/outputs regardless of sendDefaultPii\n * Sentry.init({\n * sendDefaultPii: true,\n * integrations: [\n * Sentry.openAIIntegration({\n * recordInputs: false,\n * recordOutputs: false\n * })\n * ],\n * });\n * ```\n *\n */\nconst openAIIntegration = core.defineIntegration(_openAiIntegration);\n\nexports.instrumentOpenAi = instrumentOpenAi;\nexports.openAIIntegration = openAIIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvb3BlbmFpL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsd0JBQXdCLG1CQUFPLENBQUMsZ0tBQXNCOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQSx5Q0FBeUM7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsd0JBQXdCO0FBQ3hCLHlCQUF5QjtBQUN6QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9vcGVuYWkvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJy4vaW5zdHJ1bWVudGF0aW9uLmpzJyk7XG5cbmNvbnN0IGluc3RydW1lbnRPcGVuQWkgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICBvcHRpb25zID0+IG5ldyBpbnN0cnVtZW50YXRpb24uU2VudHJ5T3BlbkFpSW5zdHJ1bWVudGF0aW9uKG9wdGlvbnMpLFxuKTtcblxuY29uc3QgX29wZW5BaUludGVncmF0aW9uID0gKChvcHRpb25zID0ge30pID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FLFxuICAgIHNldHVwT25jZSgpIHtcbiAgICAgIGluc3RydW1lbnRPcGVuQWkob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIE9wZW5BSSBTREsuXG4gKlxuICogVGhpcyBpbnRlZ3JhdGlvbiBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuXG4gKlxuICogV2hlbiBjb25maWd1cmVkLCB0aGlzIGludGVncmF0aW9uIGF1dG9tYXRpY2FsbHkgaW5zdHJ1bWVudHMgT3BlbkFJIFNESyBjbGllbnQgaW5zdGFuY2VzXG4gKiB0byBjYXB0dXJlIHRlbGVtZXRyeSBkYXRhIGZvbGxvd2luZyBPcGVuVGVsZW1ldHJ5IFNlbWFudGljIENvbnZlbnRpb25zIGZvciBHZW5lcmF0aXZlIEFJLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiBpbXBvcnQgKiBhcyBTZW50cnkgZnJvbSAnQHNlbnRyeS9ub2RlJztcbiAqXG4gKiBTZW50cnkuaW5pdCh7XG4gKiAgIGludGVncmF0aW9uczogW1NlbnRyeS5vcGVuQUlJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogIyMgT3B0aW9uc1xuICpcbiAqIC0gYHJlY29yZElucHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHByb21wdCBtZXNzYWdlcyAoZGVmYXVsdDogcmVzcGVjdHMgYHNlbmREZWZhdWx0UGlpYCBjbGllbnQgb3B0aW9uKVxuICogLSBgcmVjb3JkT3V0cHV0c2A6IFdoZXRoZXIgdG8gcmVjb3JkIHJlc3BvbnNlIHRleHQgKGRlZmF1bHQ6IHJlc3BlY3RzIGBzZW5kRGVmYXVsdFBpaWAgY2xpZW50IG9wdGlvbilcbiAqXG4gKiAjIyMgRGVmYXVsdCBCZWhhdmlvclxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBpbnRlZ3JhdGlvbiB3aWxsOlxuICogLSBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIE9OTFkgaWYgYHNlbmREZWZhdWx0UGlpYCBpcyBzZXQgdG8gYHRydWVgIGluIHlvdXIgU2VudHJ5IGNsaWVudCBvcHRpb25zXG4gKiAtIE90aGVyd2lzZSwgaW5wdXRzIGFuZCBvdXRwdXRzIGFyZSBOT1QgcmVjb3JkZWQgdW5sZXNzIGV4cGxpY2l0bHkgZW5hYmxlZFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqYXZhc2NyaXB0XG4gKiAvLyBSZWNvcmQgaW5wdXRzIGFuZCBvdXRwdXRzIHdoZW4gc2VuZERlZmF1bHRQaWkgaXMgZmFsc2VcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgaW50ZWdyYXRpb25zOiBbXG4gKiAgICAgU2VudHJ5Lm9wZW5BSUludGVncmF0aW9uKHtcbiAqICAgICAgIHJlY29yZElucHV0czogdHJ1ZSxcbiAqICAgICAgIHJlY29yZE91dHB1dHM6IHRydWVcbiAqICAgICB9KVxuICogICBdLFxuICogfSk7XG4gKlxuICogLy8gTmV2ZXIgcmVjb3JkIGlucHV0cy9vdXRwdXRzIHJlZ2FyZGxlc3Mgb2Ygc2VuZERlZmF1bHRQaWlcbiAqIFNlbnRyeS5pbml0KHtcbiAqICAgc2VuZERlZmF1bHRQaWk6IHRydWUsXG4gKiAgIGludGVncmF0aW9uczogW1xuICogICAgIFNlbnRyeS5vcGVuQUlJbnRlZ3JhdGlvbih7XG4gKiAgICAgICByZWNvcmRJbnB1dHM6IGZhbHNlLFxuICogICAgICAgcmVjb3JkT3V0cHV0czogZmFsc2VcbiAqICAgICB9KVxuICogICBdLFxuICogfSk7XG4gKiBgYGBcbiAqXG4gKi9cbmNvbnN0IG9wZW5BSUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfb3BlbkFpSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmluc3RydW1lbnRPcGVuQWkgPSBpbnN0cnVtZW50T3BlbkFpO1xuZXhwb3J0cy5vcGVuQUlJbnRlZ3JhdGlvbiA9IG9wZW5BSUludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js ***!
\************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\n\nconst supportedVersions = ['>=4.0.0 <7'];\n\n/**\n * Sentry OpenAI instrumentation using OpenTelemetry.\n */\nclass SentryOpenAiInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config = {}) {\n super('@sentry/instrumentation-openai', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition('openai', supportedVersions, this._patch.bind(this));\n return module;\n }\n\n /**\n * Core patch logic applying instrumentation to the OpenAI and AzureOpenAI client constructors.\n */\n _patch(exports$1) {\n let result = exports$1;\n result = this._patchClient(result, 'OpenAI');\n result = this._patchClient(result, 'AzureOpenAI');\n return result;\n }\n\n /**\n * Patch logic applying instrumentation to the specified client constructor.\n */\n _patchClient(exports$1, exportKey) {\n const Original = exports$1[exportKey];\n if (!Original) {\n return exports$1;\n }\n\n const config = this.getConfig();\n\n const WrappedOpenAI = function ( ...args) {\n // Check if wrapping should be skipped (e.g., when LangChain is handling instrumentation)\n if (core._INTERNAL_shouldSkipAiProviderWrapping(core.OPENAI_INTEGRATION_NAME)) {\n return Reflect.construct(Original, args) ;\n }\n\n const instance = Reflect.construct(Original, args);\n\n return core.instrumentOpenAiClient(instance , config);\n } ;\n\n // Preserve static and prototype chains\n Object.setPrototypeOf(WrappedOpenAI, Original);\n Object.setPrototypeOf(WrappedOpenAI.prototype, Original.prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedOpenAI, key, descriptor);\n }\n }\n }\n\n // Constructor replacement - handle read-only properties\n // The OpenAI property might have only a getter, so use defineProperty\n try {\n exports$1[exportKey] = WrappedOpenAI;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, exportKey, {\n value: WrappedOpenAI,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n\n // Wrap the default export if it points to the original constructor\n // Constructor replacement - handle read-only properties\n // The OpenAI property might have only a getter, so use defineProperty\n if (exports$1.default === Original) {\n try {\n exports$1.default = WrappedOpenAI;\n } catch {\n // If direct assignment fails, override the property descriptor\n Object.defineProperty(exports$1, 'default', {\n value: WrappedOpenAI,\n writable: true,\n configurable: true,\n enumerable: true,\n });\n }\n }\n return exports$1;\n }\n}\n\nexports.SentryOpenAiInstrumentation = SentryOpenAiInstrumentation;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvb3BlbmFpL2luc3RydW1lbnRhdGlvbi5qcyIsIm1hcHBpbmdzIjoiQUFBQSxDQUFDLG9EQUFvRCx5Q0FBeUMsMENBQTBDLDhDQUE4QyxvREFBb0QsbURBQW1ELHFEQUFxRCxpQkFBaUI7O0FBRW5XLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7O0FBRW5DOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsbUNBQW1DO0FBQ25DIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL29wZW5haS9pbnN0cnVtZW50YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiO2dsb2JhbFRoaXNbXCJfc2VudHJ5UmV3cml0ZXNUdW5uZWxQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJTRU5UUllfUkVMRUFTRVwiXSA9IHVuZGVmaW5lZDtnbG9iYWxUaGlzW1wiX3NlbnRyeUJhc2VQYXRoXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5TmV4dEpzVmVyc2lvblwiXSA9IFwiMTYuMS42XCI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlRnJhbWVzRGlzdERpclwiXSA9IFwiLm5leHRcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVZlcmNlbENyb25zQ29uZmlnXCJdID0gdW5kZWZpbmVkO09iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcblxuY29uc3Qgc3VwcG9ydGVkVmVyc2lvbnMgPSBbJz49NC4wLjAgPDcnXTtcblxuLyoqXG4gKiBTZW50cnkgT3BlbkFJIGluc3RydW1lbnRhdGlvbiB1c2luZyBPcGVuVGVsZW1ldHJ5LlxuICovXG5jbGFzcyBTZW50cnlPcGVuQWlJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBjb25zdHJ1Y3Rvcihjb25maWcgPSB7fSkge1xuICAgIHN1cGVyKCdAc2VudHJ5L2luc3RydW1lbnRhdGlvbi1vcGVuYWknLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oJ29wZW5haScsIHN1cHBvcnRlZFZlcnNpb25zLCB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcmUgcGF0Y2ggbG9naWMgYXBwbHlpbmcgaW5zdHJ1bWVudGF0aW9uIHRvIHRoZSBPcGVuQUkgYW5kIEF6dXJlT3BlbkFJIGNsaWVudCBjb25zdHJ1Y3RvcnMuXG4gICAqL1xuICAgX3BhdGNoKGV4cG9ydHMkMSkge1xuICAgIGxldCByZXN1bHQgPSBleHBvcnRzJDE7XG4gICAgcmVzdWx0ID0gdGhpcy5fcGF0Y2hDbGllbnQocmVzdWx0LCAnT3BlbkFJJyk7XG4gICAgcmVzdWx0ID0gdGhpcy5fcGF0Y2hDbGllbnQocmVzdWx0LCAnQXp1cmVPcGVuQUknKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoIGxvZ2ljIGFwcGx5aW5nIGluc3RydW1lbnRhdGlvbiB0byB0aGUgc3BlY2lmaWVkIGNsaWVudCBjb25zdHJ1Y3Rvci5cbiAgICovXG4gICBfcGF0Y2hDbGllbnQoZXhwb3J0cyQxLCBleHBvcnRLZXkpIHtcbiAgICBjb25zdCBPcmlnaW5hbCA9IGV4cG9ydHMkMVtleHBvcnRLZXldO1xuICAgIGlmICghT3JpZ2luYWwpIHtcbiAgICAgIHJldHVybiBleHBvcnRzJDE7XG4gICAgfVxuXG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5nZXRDb25maWcoKTtcblxuICAgIGNvbnN0IFdyYXBwZWRPcGVuQUkgPSBmdW5jdGlvbiAoIC4uLmFyZ3MpIHtcbiAgICAgIC8vIENoZWNrIGlmIHdyYXBwaW5nIHNob3VsZCBiZSBza2lwcGVkIChlLmcuLCB3aGVuIExhbmdDaGFpbiBpcyBoYW5kbGluZyBpbnN0cnVtZW50YXRpb24pXG4gICAgICBpZiAoY29yZS5fSU5URVJOQUxfc2hvdWxkU2tpcEFpUHJvdmlkZXJXcmFwcGluZyhjb3JlLk9QRU5BSV9JTlRFR1JBVElPTl9OQU1FKSkge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5jb25zdHJ1Y3QoT3JpZ2luYWwsIGFyZ3MpIDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5zdGFuY2UgPSBSZWZsZWN0LmNvbnN0cnVjdChPcmlnaW5hbCwgYXJncyk7XG5cbiAgICAgIHJldHVybiBjb3JlLmluc3RydW1lbnRPcGVuQWlDbGllbnQoaW5zdGFuY2UgLCBjb25maWcpO1xuICAgIH0gO1xuXG4gICAgLy8gUHJlc2VydmUgc3RhdGljIGFuZCBwcm90b3R5cGUgY2hhaW5zXG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRPcGVuQUksIE9yaWdpbmFsKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YoV3JhcHBlZE9wZW5BSS5wcm90b3R5cGUsIE9yaWdpbmFsLnByb3RvdHlwZSk7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhPcmlnaW5hbCkpIHtcbiAgICAgIGlmICghWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnXS5pbmNsdWRlcyhrZXkpKSB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE9yaWdpbmFsLCBrZXkpO1xuICAgICAgICBpZiAoZGVzY3JpcHRvcikge1xuICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXcmFwcGVkT3BlbkFJLCBrZXksIGRlc2NyaXB0b3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29uc3RydWN0b3IgcmVwbGFjZW1lbnQgLSBoYW5kbGUgcmVhZC1vbmx5IHByb3BlcnRpZXNcbiAgICAvLyBUaGUgT3BlbkFJIHByb3BlcnR5IG1pZ2h0IGhhdmUgb25seSBhIGdldHRlciwgc28gdXNlIGRlZmluZVByb3BlcnR5XG4gICAgdHJ5IHtcbiAgICAgIGV4cG9ydHMkMVtleHBvcnRLZXldID0gV3JhcHBlZE9wZW5BSTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElmIGRpcmVjdCBhc3NpZ25tZW50IGZhaWxzLCBvdmVycmlkZSB0aGUgcHJvcGVydHkgZGVzY3JpcHRvclxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMkMSwgZXhwb3J0S2V5LCB7XG4gICAgICAgIHZhbHVlOiBXcmFwcGVkT3BlbkFJLFxuICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gV3JhcCB0aGUgZGVmYXVsdCBleHBvcnQgaWYgaXQgcG9pbnRzIHRvIHRoZSBvcmlnaW5hbCBjb25zdHJ1Y3RvclxuICAgIC8vIENvbnN0cnVjdG9yIHJlcGxhY2VtZW50IC0gaGFuZGxlIHJlYWQtb25seSBwcm9wZXJ0aWVzXG4gICAgLy8gVGhlIE9wZW5BSSBwcm9wZXJ0eSBtaWdodCBoYXZlIG9ubHkgYSBnZXR0ZXIsIHNvIHVzZSBkZWZpbmVQcm9wZXJ0eVxuICAgIGlmIChleHBvcnRzJDEuZGVmYXVsdCA9PT0gT3JpZ2luYWwpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGV4cG9ydHMkMS5kZWZhdWx0ID0gV3JhcHBlZE9wZW5BSTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICAvLyBJZiBkaXJlY3QgYXNzaWdubWVudCBmYWlscywgb3ZlcnJpZGUgdGhlIHByb3BlcnR5IGRlc2NyaXB0b3JcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMkMSwgJ2RlZmF1bHQnLCB7XG4gICAgICAgICAgdmFsdWU6IFdyYXBwZWRPcGVuQUksXG4gICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZXhwb3J0cyQxO1xuICB9XG59XG5cbmV4cG9ydHMuU2VudHJ5T3BlbkFpSW5zdHJ1bWVudGF0aW9uID0gU2VudHJ5T3BlbkFpSW5zdHJ1bWVudGF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5zdHJ1bWVudGF0aW9uLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/openai/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationPg = __webpack_require__(/*! @opentelemetry/instrumentation-pg */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-pg@0.66.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-pg/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Postgres';\n\nconst instrumentPostgres = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n instrumentationPg.PgInstrumentation,\n (options) => ({\n requireParentSpan: true,\n requestHook(span) {\n nodeCore.addOriginToSpan(span, 'auto.db.otel.postgres');\n },\n ignoreConnectSpans: options?.ignoreConnectSpans ?? false,\n }),\n);\n\nconst _postgresIntegration = ((options) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentPostgres(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [pg](https://www.npmjs.com/package/pg) library.\n *\n * For more information, see the [`postgresIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/postgres/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.postgresIntegration()],\n * });\n * ```\n */\nconst postgresIntegration = core.defineIntegration(_postgresIntegration);\n\nexports.instrumentPostgres = instrumentPostgres;\nexports.postgresIntegration = postgresIntegration;\n//# sourceMappingURL=postgres.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsMEJBQTBCLG1CQUFPLENBQUMseU1BQW1DO0FBQ3JFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLDBCQUEwQjtBQUMxQiwyQkFBMkI7QUFDM0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvblBnID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLXBnJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnUG9zdGdyZXMnO1xuXG5jb25zdCBpbnN0cnVtZW50UG9zdGdyZXMgPSBub2RlQ29yZS5nZW5lcmF0ZUluc3RydW1lbnRPbmNlKFxuICBJTlRFR1JBVElPTl9OQU1FLFxuICBpbnN0cnVtZW50YXRpb25QZy5QZ0luc3RydW1lbnRhdGlvbixcbiAgKG9wdGlvbnMpID0+ICh7XG4gICAgcmVxdWlyZVBhcmVudFNwYW46IHRydWUsXG4gICAgcmVxdWVzdEhvb2soc3Bhbikge1xuICAgICAgbm9kZUNvcmUuYWRkT3JpZ2luVG9TcGFuKHNwYW4sICdhdXRvLmRiLm90ZWwucG9zdGdyZXMnKTtcbiAgICB9LFxuICAgIGlnbm9yZUNvbm5lY3RTcGFuczogb3B0aW9ucz8uaWdub3JlQ29ubmVjdFNwYW5zID8/IGZhbHNlLFxuICB9KSxcbik7XG5cbmNvbnN0IF9wb3N0Z3Jlc0ludGVncmF0aW9uID0gKChvcHRpb25zKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50UG9zdGdyZXMob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFtwZ10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcGcpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Bwb3N0Z3Jlc0ludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL3Bvc3RncmVzLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkucG9zdGdyZXNJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmNvbnN0IHBvc3RncmVzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9wb3N0Z3Jlc0ludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50UG9zdGdyZXMgPSBpbnN0cnVtZW50UG9zdGdyZXM7XG5leHBvcnRzLnBvc3RncmVzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlc0ludGVncmF0aW9uO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cG9zdGdyZXMuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgres.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../../debug-build.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\n\n// Instrumentation for https://github.com/porsager/postgres\n\n\nconst INTEGRATION_NAME = 'PostgresJs';\nconst SUPPORTED_VERSIONS = ['>=3.0.0 <4'];\nconst SQL_OPERATION_REGEX = /^(SELECT|INSERT|UPDATE|DELETE|CREATE|DROP|ALTER)/i;\n\n// Marker to track if a query was created from an instrumented sql instance\n// This prevents double-spanning when both wrapper and prototype patches are active\nconst QUERY_FROM_INSTRUMENTED_SQL = Symbol.for('sentry.query.from.instrumented.sql');\n\nconst instrumentPostgresJs = nodeCore.generateInstrumentOnce(\n INTEGRATION_NAME,\n (options) =>\n new PostgresJsInstrumentation({\n requireParentSpan: options?.requireParentSpan ?? true,\n requestHook: options?.requestHook,\n }),\n);\n\n/**\n * Instrumentation for the [postgres](https://www.npmjs.com/package/postgres) library.\n * This instrumentation captures postgresjs queries and their attributes.\n *\n * Uses internal Sentry patching patterns to support both CommonJS and ESM environments.\n */\nclass PostgresJsInstrumentation extends instrumentation.InstrumentationBase {\n constructor(config) {\n super('sentry-postgres-js', core.SDK_VERSION, config);\n }\n\n /**\n * Initializes the instrumentation by patching the postgres module.\n * Uses two complementary approaches:\n * 1. Main function wrapper: instruments sql instances created AFTER instrumentation is set up (CJS + ESM)\n * 2. Query.prototype patch: fallback for sql instances created BEFORE instrumentation (CJS only)\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition(\n 'postgres',\n SUPPORTED_VERSIONS,\n exports$1 => {\n try {\n return this._patchPostgres(exports$1);\n } catch (e) {\n debugBuild.DEBUG_BUILD && core.debug.error('Failed to patch postgres module:', e);\n return exports$1;\n }\n },\n exports$1 => exports$1,\n );\n\n // Add fallback Query.prototype patching for pre-existing sql instances (CJS only)\n // This catches queries from sql instances created before Sentry was initialized\n ['src', 'cf/src', 'cjs/src'].forEach(path => {\n module.files.push(\n new instrumentation.InstrumentationNodeModuleFile(\n `postgres/${path}/query.js`,\n SUPPORTED_VERSIONS,\n this._patchQueryPrototype.bind(this),\n this._unpatchQueryPrototype.bind(this),\n ),\n );\n });\n\n return module;\n }\n\n /**\n * Patches the postgres module by wrapping the main export function.\n * This intercepts the creation of sql instances and instruments them.\n */\n _patchPostgres(exports$1) {\n // In CJS: exports is the function itself\n // In ESM: exports.default is the function\n const isFunction = typeof exports$1 === 'function';\n const Original = isFunction ? exports$1 : exports$1.default;\n\n if (typeof Original !== 'function') {\n debugBuild.DEBUG_BUILD && core.debug.warn('postgres module does not export a function. Skipping instrumentation.');\n return exports$1;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n\n const WrappedPostgres = function ( ...args) {\n const sql = Reflect.construct(Original , args);\n\n // Validate that construction succeeded and returned a valid function object\n if (!sql || typeof sql !== 'function') {\n debugBuild.DEBUG_BUILD && core.debug.warn('postgres() did not return a valid instance');\n return sql;\n }\n\n // Delegate to the portable instrumentation from @sentry/core\n const config = self.getConfig();\n return core.instrumentPostgresJsSql(sql, {\n requireParentSpan: config.requireParentSpan,\n requestHook: config.requestHook,\n });\n };\n\n Object.setPrototypeOf(WrappedPostgres, Original);\n Object.setPrototypeOf(WrappedPostgres.prototype, (Original ).prototype);\n\n for (const key of Object.getOwnPropertyNames(Original)) {\n if (!['length', 'name', 'prototype'].includes(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(Original, key);\n if (descriptor) {\n Object.defineProperty(WrappedPostgres, key, descriptor);\n }\n }\n }\n\n // For CJS: the exports object IS the function, so return the wrapped function\n // For ESM: replace the default export\n if (isFunction) {\n return WrappedPostgres ;\n } else {\n core.replaceExports(exports$1, 'default', WrappedPostgres);\n return exports$1;\n }\n }\n\n /**\n * Determines whether a span should be created based on the current context.\n * If `requireParentSpan` is set to true in the configuration, a span will\n * only be created if there is a parent span available.\n */\n _shouldCreateSpans() {\n const config = this.getConfig();\n const hasParentSpan = api.trace.getSpan(api.context.active()) !== undefined;\n return hasParentSpan || !config.requireParentSpan;\n }\n\n /**\n * Extracts DB operation name from SQL query and sets it on the span.\n */\n _setOperationName(span, sanitizedQuery, command) {\n if (command) {\n span.setAttribute(semanticConventions.ATTR_DB_OPERATION_NAME, command);\n return;\n }\n // Fallback: extract operation from the SQL query\n const operationMatch = sanitizedQuery?.match(SQL_OPERATION_REGEX);\n if (operationMatch?.[1]) {\n span.setAttribute(semanticConventions.ATTR_DB_OPERATION_NAME, operationMatch[1].toUpperCase());\n }\n }\n\n /**\n * Reconstructs the full SQL query from template strings with PostgreSQL placeholders.\n *\n * For sql`SELECT * FROM users WHERE id = ${123} AND name = ${'foo'}`:\n * strings = [\"SELECT * FROM users WHERE id = \", \" AND name = \", \"\"]\n * returns: \"SELECT * FROM users WHERE id = $1 AND name = $2\"\n */\n _reconstructQuery(strings) {\n if (!strings?.length) {\n return undefined;\n }\n if (strings.length === 1) {\n return strings[0] || undefined;\n }\n // Join template parts with PostgreSQL placeholders ($1, $2, etc.)\n return strings.reduce((acc, str, i) => (i === 0 ? str : `${acc}$${i}${str}`), '');\n }\n\n /**\n * Sanitize SQL query as per the OTEL semantic conventions\n * https://opentelemetry.io/docs/specs/semconv/database/database-spans/#sanitization-of-dbquerytext\n *\n * PostgreSQL $n placeholders are preserved per OTEL spec - they're parameterized queries,\n * not sensitive literals. Only actual values (strings, numbers, booleans) are sanitized.\n */\n _sanitizeSqlQuery(sqlQuery) {\n if (!sqlQuery) {\n return 'Unknown SQL Query';\n }\n\n return (\n sqlQuery\n // Remove comments first (they may contain newlines and extra spaces)\n .replace(/--.*$/gm, '') // Single line comments (multiline mode)\n .replace(/\\/\\*[\\s\\S]*?\\*\\//g, '') // Multi-line comments\n .replace(/;\\s*$/, '') // Remove trailing semicolons\n // Collapse whitespace to a single space (after removing comments)\n .replace(/\\s+/g, ' ')\n .trim() // Remove extra spaces and trim\n // Sanitize hex/binary literals before string literals\n .replace(/\\bX'[0-9A-Fa-f]*'/gi, '?') // Hex string literals\n .replace(/\\bB'[01]*'/gi, '?') // Binary string literals\n // Sanitize string literals (handles escaped quotes)\n .replace(/'(?:[^']|'')*'/g, '?')\n // Sanitize hex numbers\n .replace(/\\b0x[0-9A-Fa-f]+/gi, '?')\n // Sanitize boolean literals\n .replace(/\\b(?:TRUE|FALSE)\\b/gi, '?')\n // Sanitize numeric literals (preserve $n placeholders via negative lookbehind)\n .replace(/-?\\b\\d+\\.?\\d*[eE][+-]?\\d+\\b/g, '?') // Scientific notation\n .replace(/-?\\b\\d+\\.\\d+\\b/g, '?') // Decimals\n .replace(/-?\\.\\d+\\b/g, '?') // Decimals starting with dot\n .replace(/(?<!\\$)-?\\b\\d+\\b/g, '?') // Integers (NOT $n placeholders)\n // Collapse IN clauses for cardinality (both ? and $n variants)\n .replace(/\\bIN\\b\\s*\\(\\s*\\?(?:\\s*,\\s*\\?)*\\s*\\)/gi, 'IN (?)')\n .replace(/\\bIN\\b\\s*\\(\\s*\\$\\d+(?:\\s*,\\s*\\$\\d+)*\\s*\\)/gi, 'IN ($?)')\n );\n }\n\n /**\n * Fallback patch for Query.prototype.handle to instrument queries from pre-existing sql instances.\n * This catches queries from sql instances created BEFORE Sentry was initialized (CJS only).\n *\n * Note: Queries from pre-existing instances won't have connection context (database, host, port)\n * because the sql instance wasn't created through our instrumented wrapper.\n */\n _patchQueryPrototype(moduleExports\n\n) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n const originalHandle = moduleExports.Query.prototype.handle;\n\n moduleExports.Query.prototype.handle = async function (\n\n ...args\n ) {\n // Skip if this query came from an instrumented sql instance (already handled by wrapper)\n if ((this )[QUERY_FROM_INSTRUMENTED_SQL]) {\n return originalHandle.apply(this, args);\n }\n\n // Skip if we shouldn't create spans\n if (!self._shouldCreateSpans()) {\n return originalHandle.apply(this, args);\n }\n\n const fullQuery = self._reconstructQuery(this.strings);\n const sanitizedSqlQuery = self._sanitizeSqlQuery(fullQuery);\n\n return core.startSpanManual(\n {\n name: sanitizedSqlQuery || 'postgresjs.query',\n op: 'db',\n },\n (span) => {\n nodeCore.addOriginToSpan(span, 'auto.db.postgresjs');\n\n span.setAttributes({\n [semanticConventions.ATTR_DB_SYSTEM_NAME]: 'postgres',\n [semanticConventions.ATTR_DB_QUERY_TEXT]: sanitizedSqlQuery,\n });\n\n // Note: No connection context available for pre-existing instances\n // because the sql instance wasn't created through our instrumented wrapper\n\n const config = self.getConfig();\n const { requestHook } = config;\n if (requestHook) {\n instrumentation.safeExecuteInTheMiddle(\n () => requestHook(span, sanitizedSqlQuery, undefined),\n e => {\n if (e) {\n span.setAttribute('sentry.hook.error', 'requestHook failed');\n debugBuild.DEBUG_BUILD && core.debug.error(`Error in requestHook for ${INTEGRATION_NAME} integration:`, e);\n }\n },\n true,\n );\n }\n\n // Wrap resolve to end span on success\n const originalResolve = this.resolve;\n this.resolve = new Proxy(originalResolve , {\n apply: (resolveTarget, resolveThisArg, resolveArgs) => {\n try {\n self._setOperationName(span, sanitizedSqlQuery, resolveArgs?.[0]?.command);\n span.end();\n } catch (e) {\n debugBuild.DEBUG_BUILD && core.debug.error('Error ending span in resolve callback:', e);\n }\n return Reflect.apply(resolveTarget, resolveThisArg, resolveArgs);\n },\n });\n\n // Wrap reject to end span on error\n const originalReject = this.reject;\n this.reject = new Proxy(originalReject , {\n apply: (rejectTarget, rejectThisArg, rejectArgs) => {\n try {\n span.setStatus({\n code: core.SPAN_STATUS_ERROR,\n message: rejectArgs?.[0]?.message || 'unknown_error',\n });\n span.setAttribute(semanticConventions.ATTR_DB_RESPONSE_STATUS_CODE, rejectArgs?.[0]?.code || 'unknown');\n span.setAttribute(semanticConventions.ATTR_ERROR_TYPE, rejectArgs?.[0]?.name || 'unknown');\n self._setOperationName(span, sanitizedSqlQuery);\n span.end();\n } catch (e) {\n debugBuild.DEBUG_BUILD && core.debug.error('Error ending span in reject callback:', e);\n }\n return Reflect.apply(rejectTarget, rejectThisArg, rejectArgs);\n },\n });\n\n try {\n return originalHandle.apply(this, args);\n } catch (e) {\n span.setStatus({\n code: core.SPAN_STATUS_ERROR,\n message: e instanceof Error ? e.message : 'unknown_error',\n });\n span.end();\n throw e;\n }\n },\n );\n };\n\n // Store original for unpatch - must be set on the NEW patched function\n moduleExports.Query.prototype.handle.__sentry_original__ = originalHandle;\n\n return moduleExports;\n }\n\n /**\n * Restores the original Query.prototype.handle method.\n */\n _unpatchQueryPrototype(moduleExports\n\n) {\n if (moduleExports.Query.prototype.handle.__sentry_original__) {\n moduleExports.Query.prototype.handle = moduleExports.Query.prototype.handle.__sentry_original__;\n }\n return moduleExports;\n }\n}\n\nconst _postgresJsIntegration = ((options) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentPostgresJs(options);\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [postgres](https://www.npmjs.com/package/postgres) library.\n *\n * For more information, see the [`postgresIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/postgres/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.postgresJsIntegration()],\n * });\n * ```\n */\n\nconst postgresJsIntegration = core.defineIntegration(_postgresJsIntegration);\n\nexports.PostgresJsInstrumentation = PostgresJsInstrumentation;\nexports.instrumentPostgresJs = instrumentPostgresJs;\nexports.postgresJsIntegration = postgresJsIntegration;\n//# sourceMappingURL=postgresjs.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXNqcy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSxZQUFZLG1CQUFPLENBQUMsa0lBQW9CO0FBQ3hDLHdCQUF3QixtQkFBTyxDQUFDLGlNQUFnQztBQUNoRSw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxtQkFBbUIsbUJBQU8sQ0FBQyxnSUFBc0I7O0FBRWpEOzs7QUFHQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLEtBQUs7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSw4Q0FBOEMsS0FBSyxhQUFhLE1BQU07QUFDdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtEQUErRCxJQUFJLEdBQUcsRUFBRSxFQUFFLElBQUk7QUFDOUU7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxXQUFXOztBQUVYO0FBQ0E7O0FBRUE7QUFDQSxrQkFBa0IsY0FBYztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5RkFBeUYsa0JBQWtCO0FBQzNHO0FBQ0EsZUFBZTtBQUNmO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQjtBQUNoQjtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2IsV0FBVzs7QUFFWDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYixXQUFXOztBQUVYO0FBQ0E7QUFDQSxZQUFZO0FBQ1o7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7O0FBRUE7O0FBRUEsaUNBQWlDO0FBQ2pDLDRCQUE0QjtBQUM1Qiw2QkFBNkI7QUFDN0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9tYXJjbWludGVsL1Byb2plY3RzL2UtdGliLmNvbS9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcG9zdGdyZXNqcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCBpbnN0cnVtZW50YXRpb24gPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IHNlbWFudGljQ29udmVudGlvbnMgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9zZW1hbnRpYy1jb252ZW50aW9ucycpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuY29uc3QgZGVidWdCdWlsZCA9IHJlcXVpcmUoJy4uLy4uL2RlYnVnLWJ1aWxkLmpzJyk7XG5cbi8vIEluc3RydW1lbnRhdGlvbiBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3BvcnNhZ2VyL3Bvc3RncmVzXG5cblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdQb3N0Z3Jlc0pzJztcbmNvbnN0IFNVUFBPUlRFRF9WRVJTSU9OUyA9IFsnPj0zLjAuMCA8NCddO1xuY29uc3QgU1FMX09QRVJBVElPTl9SRUdFWCA9IC9eKFNFTEVDVHxJTlNFUlR8VVBEQVRFfERFTEVURXxDUkVBVEV8RFJPUHxBTFRFUikvaTtcblxuLy8gTWFya2VyIHRvIHRyYWNrIGlmIGEgcXVlcnkgd2FzIGNyZWF0ZWQgZnJvbSBhbiBpbnN0cnVtZW50ZWQgc3FsIGluc3RhbmNlXG4vLyBUaGlzIHByZXZlbnRzIGRvdWJsZS1zcGFubmluZyB3aGVuIGJvdGggd3JhcHBlciBhbmQgcHJvdG90eXBlIHBhdGNoZXMgYXJlIGFjdGl2ZVxuY29uc3QgUVVFUllfRlJPTV9JTlNUUlVNRU5URURfU1FMID0gU3ltYm9sLmZvcignc2VudHJ5LnF1ZXJ5LmZyb20uaW5zdHJ1bWVudGVkLnNxbCcpO1xuXG5jb25zdCBpbnN0cnVtZW50UG9zdGdyZXNKcyA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoXG4gIElOVEVHUkFUSU9OX05BTUUsXG4gIChvcHRpb25zKSA9PlxuICAgIG5ldyBQb3N0Z3Jlc0pzSW5zdHJ1bWVudGF0aW9uKHtcbiAgICAgIHJlcXVpcmVQYXJlbnRTcGFuOiBvcHRpb25zPy5yZXF1aXJlUGFyZW50U3BhbiA/PyB0cnVlLFxuICAgICAgcmVxdWVzdEhvb2s6IG9wdGlvbnM/LnJlcXVlc3RIb29rLFxuICAgIH0pLFxuKTtcblxuLyoqXG4gKiBJbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbcG9zdGdyZXNdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL3Bvc3RncmVzKSBsaWJyYXJ5LlxuICogVGhpcyBpbnN0cnVtZW50YXRpb24gY2FwdHVyZXMgcG9zdGdyZXNqcyBxdWVyaWVzIGFuZCB0aGVpciBhdHRyaWJ1dGVzLlxuICpcbiAqIFVzZXMgaW50ZXJuYWwgU2VudHJ5IHBhdGNoaW5nIHBhdHRlcm5zIHRvIHN1cHBvcnQgYm90aCBDb21tb25KUyBhbmQgRVNNIGVudmlyb25tZW50cy5cbiAqL1xuY2xhc3MgUG9zdGdyZXNKc0luc3RydW1lbnRhdGlvbiBleHRlbmRzIGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25CYXNlIHtcbiAgIGNvbnN0cnVjdG9yKGNvbmZpZykge1xuICAgIHN1cGVyKCdzZW50cnktcG9zdGdyZXMtanMnLCBjb3JlLlNES19WRVJTSU9OLCBjb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgcGF0Y2hpbmcgdGhlIHBvc3RncmVzIG1vZHVsZS5cbiAgICogVXNlcyB0d28gY29tcGxlbWVudGFyeSBhcHByb2FjaGVzOlxuICAgKiAxLiBNYWluIGZ1bmN0aW9uIHdyYXBwZXI6IGluc3RydW1lbnRzIHNxbCBpbnN0YW5jZXMgY3JlYXRlZCBBRlRFUiBpbnN0cnVtZW50YXRpb24gaXMgc2V0IHVwIChDSlMgKyBFU00pXG4gICAqIDIuIFF1ZXJ5LnByb3RvdHlwZSBwYXRjaDogZmFsbGJhY2sgZm9yIHNxbCBpbnN0YW5jZXMgY3JlYXRlZCBCRUZPUkUgaW5zdHJ1bWVudGF0aW9uIChDSlMgb25seSlcbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oXG4gICAgICAncG9zdGdyZXMnLFxuICAgICAgU1VQUE9SVEVEX1ZFUlNJT05TLFxuICAgICAgZXhwb3J0cyQxID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fcGF0Y2hQb3N0Z3JlcyhleHBvcnRzJDEpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgZGVidWdCdWlsZC5ERUJVR19CVUlMRCAmJiBjb3JlLmRlYnVnLmVycm9yKCdGYWlsZWQgdG8gcGF0Y2ggcG9zdGdyZXMgbW9kdWxlOicsIGUpO1xuICAgICAgICAgIHJldHVybiBleHBvcnRzJDE7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBleHBvcnRzJDEgPT4gZXhwb3J0cyQxLFxuICAgICk7XG5cbiAgICAvLyBBZGQgZmFsbGJhY2sgUXVlcnkucHJvdG90eXBlIHBhdGNoaW5nIGZvciBwcmUtZXhpc3Rpbmcgc3FsIGluc3RhbmNlcyAoQ0pTIG9ubHkpXG4gICAgLy8gVGhpcyBjYXRjaGVzIHF1ZXJpZXMgZnJvbSBzcWwgaW5zdGFuY2VzIGNyZWF0ZWQgYmVmb3JlIFNlbnRyeSB3YXMgaW5pdGlhbGl6ZWRcbiAgICBbJ3NyYycsICdjZi9zcmMnLCAnY2pzL3NyYyddLmZvckVhY2gocGF0aCA9PiB7XG4gICAgICBtb2R1bGUuZmlsZXMucHVzaChcbiAgICAgICAgbmV3IGluc3RydW1lbnRhdGlvbi5JbnN0cnVtZW50YXRpb25Ob2RlTW9kdWxlRmlsZShcbiAgICAgICAgICBgcG9zdGdyZXMvJHtwYXRofS9xdWVyeS5qc2AsXG4gICAgICAgICAgU1VQUE9SVEVEX1ZFUlNJT05TLFxuICAgICAgICAgIHRoaXMuX3BhdGNoUXVlcnlQcm90b3R5cGUuYmluZCh0aGlzKSxcbiAgICAgICAgICB0aGlzLl91bnBhdGNoUXVlcnlQcm90b3R5cGUuYmluZCh0aGlzKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgdGhlIHBvc3RncmVzIG1vZHVsZSBieSB3cmFwcGluZyB0aGUgbWFpbiBleHBvcnQgZnVuY3Rpb24uXG4gICAqIFRoaXMgaW50ZXJjZXB0cyB0aGUgY3JlYXRpb24gb2Ygc3FsIGluc3RhbmNlcyBhbmQgaW5zdHJ1bWVudHMgdGhlbS5cbiAgICovXG4gICBfcGF0Y2hQb3N0Z3JlcyhleHBvcnRzJDEpIHtcbiAgICAvLyBJbiBDSlM6IGV4cG9ydHMgaXMgdGhlIGZ1bmN0aW9uIGl0c2VsZlxuICAgIC8vIEluIEVTTTogZXhwb3J0cy5kZWZhdWx0IGlzIHRoZSBmdW5jdGlvblxuICAgIGNvbnN0IGlzRnVuY3Rpb24gPSB0eXBlb2YgZXhwb3J0cyQxID09PSAnZnVuY3Rpb24nO1xuICAgIGNvbnN0IE9yaWdpbmFsID0gaXNGdW5jdGlvbiA/IGV4cG9ydHMkMSA6IGV4cG9ydHMkMS5kZWZhdWx0O1xuXG4gICAgaWYgKHR5cGVvZiBPcmlnaW5hbCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgZGVidWdCdWlsZC5ERUJVR19CVUlMRCAmJiBjb3JlLmRlYnVnLndhcm4oJ3Bvc3RncmVzIG1vZHVsZSBkb2VzIG5vdCBleHBvcnQgYSBmdW5jdGlvbi4gU2tpcHBpbmcgaW5zdHJ1bWVudGF0aW9uLicpO1xuICAgICAgcmV0dXJuIGV4cG9ydHMkMTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXRoaXMtYWxpYXNcbiAgICBjb25zdCBzZWxmID0gdGhpcztcblxuICAgIGNvbnN0IFdyYXBwZWRQb3N0Z3JlcyA9IGZ1bmN0aW9uICggLi4uYXJncykge1xuICAgICAgY29uc3Qgc3FsID0gUmVmbGVjdC5jb25zdHJ1Y3QoT3JpZ2luYWwgLCBhcmdzKTtcblxuICAgICAgLy8gVmFsaWRhdGUgdGhhdCBjb25zdHJ1Y3Rpb24gc3VjY2VlZGVkIGFuZCByZXR1cm5lZCBhIHZhbGlkIGZ1bmN0aW9uIG9iamVjdFxuICAgICAgaWYgKCFzcWwgfHwgdHlwZW9mIHNxbCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcud2FybigncG9zdGdyZXMoKSBkaWQgbm90IHJldHVybiBhIHZhbGlkIGluc3RhbmNlJyk7XG4gICAgICAgIHJldHVybiBzcWw7XG4gICAgICB9XG5cbiAgICAgIC8vIERlbGVnYXRlIHRvIHRoZSBwb3J0YWJsZSBpbnN0cnVtZW50YXRpb24gZnJvbSBAc2VudHJ5L2NvcmVcbiAgICAgIGNvbnN0IGNvbmZpZyA9IHNlbGYuZ2V0Q29uZmlnKCk7XG4gICAgICByZXR1cm4gY29yZS5pbnN0cnVtZW50UG9zdGdyZXNKc1NxbChzcWwsIHtcbiAgICAgICAgcmVxdWlyZVBhcmVudFNwYW46IGNvbmZpZy5yZXF1aXJlUGFyZW50U3BhbixcbiAgICAgICAgcmVxdWVzdEhvb2s6IGNvbmZpZy5yZXF1ZXN0SG9vayxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YoV3JhcHBlZFBvc3RncmVzLCBPcmlnaW5hbCk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKFdyYXBwZWRQb3N0Z3Jlcy5wcm90b3R5cGUsIChPcmlnaW5hbCApLnByb3RvdHlwZSk7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhPcmlnaW5hbCkpIHtcbiAgICAgIGlmICghWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnXS5pbmNsdWRlcyhrZXkpKSB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE9yaWdpbmFsLCBrZXkpO1xuICAgICAgICBpZiAoZGVzY3JpcHRvcikge1xuICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShXcmFwcGVkUG9zdGdyZXMsIGtleSwgZGVzY3JpcHRvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGb3IgQ0pTOiB0aGUgZXhwb3J0cyBvYmplY3QgSVMgdGhlIGZ1bmN0aW9uLCBzbyByZXR1cm4gdGhlIHdyYXBwZWQgZnVuY3Rpb25cbiAgICAvLyBGb3IgRVNNOiByZXBsYWNlIHRoZSBkZWZhdWx0IGV4cG9ydFxuICAgIGlmIChpc0Z1bmN0aW9uKSB7XG4gICAgICByZXR1cm4gV3JhcHBlZFBvc3RncmVzIDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29yZS5yZXBsYWNlRXhwb3J0cyhleHBvcnRzJDEsICdkZWZhdWx0JywgV3JhcHBlZFBvc3RncmVzKTtcbiAgICAgIHJldHVybiBleHBvcnRzJDE7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBhIHNwYW4gc2hvdWxkIGJlIGNyZWF0ZWQgYmFzZWQgb24gdGhlIGN1cnJlbnQgY29udGV4dC5cbiAgICogSWYgYHJlcXVpcmVQYXJlbnRTcGFuYCBpcyBzZXQgdG8gdHJ1ZSBpbiB0aGUgY29uZmlndXJhdGlvbiwgYSBzcGFuIHdpbGxcbiAgICogb25seSBiZSBjcmVhdGVkIGlmIHRoZXJlIGlzIGEgcGFyZW50IHNwYW4gYXZhaWxhYmxlLlxuICAgKi9cbiAgIF9zaG91bGRDcmVhdGVTcGFucygpIHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldENvbmZpZygpO1xuICAgIGNvbnN0IGhhc1BhcmVudFNwYW4gPSBhcGkudHJhY2UuZ2V0U3BhbihhcGkuY29udGV4dC5hY3RpdmUoKSkgIT09IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gaGFzUGFyZW50U3BhbiB8fCAhY29uZmlnLnJlcXVpcmVQYXJlbnRTcGFuO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4dHJhY3RzIERCIG9wZXJhdGlvbiBuYW1lIGZyb20gU1FMIHF1ZXJ5IGFuZCBzZXRzIGl0IG9uIHRoZSBzcGFuLlxuICAgKi9cbiAgIF9zZXRPcGVyYXRpb25OYW1lKHNwYW4sIHNhbml0aXplZFF1ZXJ5LCBjb21tYW5kKSB7XG4gICAgaWYgKGNvbW1hbmQpIHtcbiAgICAgIHNwYW4uc2V0QXR0cmlidXRlKHNlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9PUEVSQVRJT05fTkFNRSwgY29tbWFuZCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIEZhbGxiYWNrOiBleHRyYWN0IG9wZXJhdGlvbiBmcm9tIHRoZSBTUUwgcXVlcnlcbiAgICBjb25zdCBvcGVyYXRpb25NYXRjaCA9IHNhbml0aXplZFF1ZXJ5Py5tYXRjaChTUUxfT1BFUkFUSU9OX1JFR0VYKTtcbiAgICBpZiAob3BlcmF0aW9uTWF0Y2g/LlsxXSkge1xuICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX09QRVJBVElPTl9OQU1FLCBvcGVyYXRpb25NYXRjaFsxXS50b1VwcGVyQ2FzZSgpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVjb25zdHJ1Y3RzIHRoZSBmdWxsIFNRTCBxdWVyeSBmcm9tIHRlbXBsYXRlIHN0cmluZ3Mgd2l0aCBQb3N0Z3JlU1FMIHBsYWNlaG9sZGVycy5cbiAgICpcbiAgICogRm9yIHNxbGBTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGlkID0gJHsxMjN9IEFORCBuYW1lID0gJHsnZm9vJ31gOlxuICAgKiAgIHN0cmluZ3MgPSBbXCJTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGlkID0gXCIsIFwiIEFORCBuYW1lID0gXCIsIFwiXCJdXG4gICAqICAgcmV0dXJuczogXCJTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGlkID0gJDEgQU5EIG5hbWUgPSAkMlwiXG4gICAqL1xuICAgX3JlY29uc3RydWN0UXVlcnkoc3RyaW5ncykge1xuICAgIGlmICghc3RyaW5ncz8ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZiAoc3RyaW5ncy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBzdHJpbmdzWzBdIHx8IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgLy8gSm9pbiB0ZW1wbGF0ZSBwYXJ0cyB3aXRoIFBvc3RncmVTUUwgcGxhY2Vob2xkZXJzICgkMSwgJDIsIGV0Yy4pXG4gICAgcmV0dXJuIHN0cmluZ3MucmVkdWNlKChhY2MsIHN0ciwgaSkgPT4gKGkgPT09IDAgPyBzdHIgOiBgJHthY2N9JCR7aX0ke3N0cn1gKSwgJycpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhbml0aXplIFNRTCBxdWVyeSBhcyBwZXIgdGhlIE9URUwgc2VtYW50aWMgY29udmVudGlvbnNcbiAgICogaHR0cHM6Ly9vcGVudGVsZW1ldHJ5LmlvL2RvY3Mvc3BlY3Mvc2VtY29udi9kYXRhYmFzZS9kYXRhYmFzZS1zcGFucy8jc2FuaXRpemF0aW9uLW9mLWRicXVlcnl0ZXh0XG4gICAqXG4gICAqIFBvc3RncmVTUUwgJG4gcGxhY2Vob2xkZXJzIGFyZSBwcmVzZXJ2ZWQgcGVyIE9URUwgc3BlYyAtIHRoZXkncmUgcGFyYW1ldGVyaXplZCBxdWVyaWVzLFxuICAgKiBub3Qgc2Vuc2l0aXZlIGxpdGVyYWxzLiBPbmx5IGFjdHVhbCB2YWx1ZXMgKHN0cmluZ3MsIG51bWJlcnMsIGJvb2xlYW5zKSBhcmUgc2FuaXRpemVkLlxuICAgKi9cbiAgIF9zYW5pdGl6ZVNxbFF1ZXJ5KHNxbFF1ZXJ5KSB7XG4gICAgaWYgKCFzcWxRdWVyeSkge1xuICAgICAgcmV0dXJuICdVbmtub3duIFNRTCBRdWVyeSc7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIHNxbFF1ZXJ5XG4gICAgICAgIC8vIFJlbW92ZSBjb21tZW50cyBmaXJzdCAodGhleSBtYXkgY29udGFpbiBuZXdsaW5lcyBhbmQgZXh0cmEgc3BhY2VzKVxuICAgICAgICAucmVwbGFjZSgvLS0uKiQvZ20sICcnKSAvLyBTaW5nbGUgbGluZSBjb21tZW50cyAobXVsdGlsaW5lIG1vZGUpXG4gICAgICAgIC5yZXBsYWNlKC9cXC9cXCpbXFxzXFxTXSo/XFwqXFwvL2csICcnKSAvLyBNdWx0aS1saW5lIGNvbW1lbnRzXG4gICAgICAgIC5yZXBsYWNlKC87XFxzKiQvLCAnJykgLy8gUmVtb3ZlIHRyYWlsaW5nIHNlbWljb2xvbnNcbiAgICAgICAgLy8gQ29sbGFwc2Ugd2hpdGVzcGFjZSB0byBhIHNpbmdsZSBzcGFjZSAoYWZ0ZXIgcmVtb3ZpbmcgY29tbWVudHMpXG4gICAgICAgIC5yZXBsYWNlKC9cXHMrL2csICcgJylcbiAgICAgICAgLnRyaW0oKSAvLyBSZW1vdmUgZXh0cmEgc3BhY2VzIGFuZCB0cmltXG4gICAgICAgIC8vIFNhbml0aXplIGhleC9iaW5hcnkgbGl0ZXJhbHMgYmVmb3JlIHN0cmluZyBsaXRlcmFsc1xuICAgICAgICAucmVwbGFjZSgvXFxiWCdbMC05QS1GYS1mXSonL2dpLCAnPycpIC8vIEhleCBzdHJpbmcgbGl0ZXJhbHNcbiAgICAgICAgLnJlcGxhY2UoL1xcYkInWzAxXSonL2dpLCAnPycpIC8vIEJpbmFyeSBzdHJpbmcgbGl0ZXJhbHNcbiAgICAgICAgLy8gU2FuaXRpemUgc3RyaW5nIGxpdGVyYWxzIChoYW5kbGVzIGVzY2FwZWQgcXVvdGVzKVxuICAgICAgICAucmVwbGFjZSgvJyg/OlteJ118JycpKicvZywgJz8nKVxuICAgICAgICAvLyBTYW5pdGl6ZSBoZXggbnVtYmVyc1xuICAgICAgICAucmVwbGFjZSgvXFxiMHhbMC05QS1GYS1mXSsvZ2ksICc/JylcbiAgICAgICAgLy8gU2FuaXRpemUgYm9vbGVhbiBsaXRlcmFsc1xuICAgICAgICAucmVwbGFjZSgvXFxiKD86VFJVRXxGQUxTRSlcXGIvZ2ksICc/JylcbiAgICAgICAgLy8gU2FuaXRpemUgbnVtZXJpYyBsaXRlcmFscyAocHJlc2VydmUgJG4gcGxhY2Vob2xkZXJzIHZpYSBuZWdhdGl2ZSBsb29rYmVoaW5kKVxuICAgICAgICAucmVwbGFjZSgvLT9cXGJcXGQrXFwuP1xcZCpbZUVdWystXT9cXGQrXFxiL2csICc/JykgLy8gU2NpZW50aWZpYyBub3RhdGlvblxuICAgICAgICAucmVwbGFjZSgvLT9cXGJcXGQrXFwuXFxkK1xcYi9nLCAnPycpIC8vIERlY2ltYWxzXG4gICAgICAgIC5yZXBsYWNlKC8tP1xcLlxcZCtcXGIvZywgJz8nKSAvLyBEZWNpbWFscyBzdGFydGluZyB3aXRoIGRvdFxuICAgICAgICAucmVwbGFjZSgvKD88IVxcJCktP1xcYlxcZCtcXGIvZywgJz8nKSAvLyBJbnRlZ2VycyAoTk9UICRuIHBsYWNlaG9sZGVycylcbiAgICAgICAgLy8gQ29sbGFwc2UgSU4gY2xhdXNlcyBmb3IgY2FyZGluYWxpdHkgKGJvdGggPyBhbmQgJG4gdmFyaWFudHMpXG4gICAgICAgIC5yZXBsYWNlKC9cXGJJTlxcYlxccypcXChcXHMqXFw/KD86XFxzKixcXHMqXFw/KSpcXHMqXFwpL2dpLCAnSU4gKD8pJylcbiAgICAgICAgLnJlcGxhY2UoL1xcYklOXFxiXFxzKlxcKFxccypcXCRcXGQrKD86XFxzKixcXHMqXFwkXFxkKykqXFxzKlxcKS9naSwgJ0lOICgkPyknKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmFsbGJhY2sgcGF0Y2ggZm9yIFF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUgdG8gaW5zdHJ1bWVudCBxdWVyaWVzIGZyb20gcHJlLWV4aXN0aW5nIHNxbCBpbnN0YW5jZXMuXG4gICAqIFRoaXMgY2F0Y2hlcyBxdWVyaWVzIGZyb20gc3FsIGluc3RhbmNlcyBjcmVhdGVkIEJFRk9SRSBTZW50cnkgd2FzIGluaXRpYWxpemVkIChDSlMgb25seSkuXG4gICAqXG4gICAqIE5vdGU6IFF1ZXJpZXMgZnJvbSBwcmUtZXhpc3RpbmcgaW5zdGFuY2VzIHdvbid0IGhhdmUgY29ubmVjdGlvbiBjb250ZXh0IChkYXRhYmFzZSwgaG9zdCwgcG9ydClcbiAgICogYmVjYXVzZSB0aGUgc3FsIGluc3RhbmNlIHdhc24ndCBjcmVhdGVkIHRocm91Z2ggb3VyIGluc3RydW1lbnRlZCB3cmFwcGVyLlxuICAgKi9cbiAgIF9wYXRjaFF1ZXJ5UHJvdG90eXBlKG1vZHVsZUV4cG9ydHNcblxuKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzXG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgY29uc3Qgb3JpZ2luYWxIYW5kbGUgPSBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGU7XG5cbiAgICBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUgPSBhc3luYyBmdW5jdGlvbiAoXG5cbiAgICAgIC4uLmFyZ3NcbiAgICApIHtcbiAgICAgIC8vIFNraXAgaWYgdGhpcyBxdWVyeSBjYW1lIGZyb20gYW4gaW5zdHJ1bWVudGVkIHNxbCBpbnN0YW5jZSAoYWxyZWFkeSBoYW5kbGVkIGJ5IHdyYXBwZXIpXG4gICAgICBpZiAoKHRoaXMgKVtRVUVSWV9GUk9NX0lOU1RSVU1FTlRFRF9TUUxdKSB7XG4gICAgICAgIHJldHVybiBvcmlnaW5hbEhhbmRsZS5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2tpcCBpZiB3ZSBzaG91bGRuJ3QgY3JlYXRlIHNwYW5zXG4gICAgICBpZiAoIXNlbGYuX3Nob3VsZENyZWF0ZVNwYW5zKCkpIHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsSGFuZGxlLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBmdWxsUXVlcnkgPSBzZWxmLl9yZWNvbnN0cnVjdFF1ZXJ5KHRoaXMuc3RyaW5ncyk7XG4gICAgICBjb25zdCBzYW5pdGl6ZWRTcWxRdWVyeSA9IHNlbGYuX3Nhbml0aXplU3FsUXVlcnkoZnVsbFF1ZXJ5KTtcblxuICAgICAgcmV0dXJuIGNvcmUuc3RhcnRTcGFuTWFudWFsKFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogc2FuaXRpemVkU3FsUXVlcnkgfHwgJ3Bvc3RncmVzanMucXVlcnknLFxuICAgICAgICAgIG9wOiAnZGInLFxuICAgICAgICB9LFxuICAgICAgICAoc3BhbikgPT4ge1xuICAgICAgICAgIG5vZGVDb3JlLmFkZE9yaWdpblRvU3BhbihzcGFuLCAnYXV0by5kYi5wb3N0Z3Jlc2pzJyk7XG5cbiAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9TWVNURU1fTkFNRV06ICdwb3N0Z3JlcycsXG4gICAgICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0RCX1FVRVJZX1RFWFRdOiBzYW5pdGl6ZWRTcWxRdWVyeSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIC8vIE5vdGU6IE5vIGNvbm5lY3Rpb24gY29udGV4dCBhdmFpbGFibGUgZm9yIHByZS1leGlzdGluZyBpbnN0YW5jZXNcbiAgICAgICAgICAvLyBiZWNhdXNlIHRoZSBzcWwgaW5zdGFuY2Ugd2Fzbid0IGNyZWF0ZWQgdGhyb3VnaCBvdXIgaW5zdHJ1bWVudGVkIHdyYXBwZXJcblxuICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IHNlbGYuZ2V0Q29uZmlnKCk7XG4gICAgICAgICAgY29uc3QgeyByZXF1ZXN0SG9vayB9ID0gY29uZmlnO1xuICAgICAgICAgIGlmIChyZXF1ZXN0SG9vaykge1xuICAgICAgICAgICAgaW5zdHJ1bWVudGF0aW9uLnNhZmVFeGVjdXRlSW5UaGVNaWRkbGUoXG4gICAgICAgICAgICAgICgpID0+IHJlcXVlc3RIb29rKHNwYW4sIHNhbml0aXplZFNxbFF1ZXJ5LCB1bmRlZmluZWQpLFxuICAgICAgICAgICAgICBlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZSkge1xuICAgICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoJ3NlbnRyeS5ob29rLmVycm9yJywgJ3JlcXVlc3RIb29rIGZhaWxlZCcpO1xuICAgICAgICAgICAgICAgICAgZGVidWdCdWlsZC5ERUJVR19CVUlMRCAmJiBjb3JlLmRlYnVnLmVycm9yKGBFcnJvciBpbiByZXF1ZXN0SG9vayBmb3IgJHtJTlRFR1JBVElPTl9OQU1FfSBpbnRlZ3JhdGlvbjpgLCBlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIFdyYXAgcmVzb2x2ZSB0byBlbmQgc3BhbiBvbiBzdWNjZXNzXG4gICAgICAgICAgY29uc3Qgb3JpZ2luYWxSZXNvbHZlID0gdGhpcy5yZXNvbHZlO1xuICAgICAgICAgIHRoaXMucmVzb2x2ZSA9IG5ldyBQcm94eShvcmlnaW5hbFJlc29sdmUgLCB7XG4gICAgICAgICAgICBhcHBseTogKHJlc29sdmVUYXJnZXQsIHJlc29sdmVUaGlzQXJnLCByZXNvbHZlQXJncykgPT4ge1xuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHNlbGYuX3NldE9wZXJhdGlvbk5hbWUoc3Bhbiwgc2FuaXRpemVkU3FsUXVlcnksIHJlc29sdmVBcmdzPy5bMF0/LmNvbW1hbmQpO1xuICAgICAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcuZXJyb3IoJ0Vycm9yIGVuZGluZyBzcGFuIGluIHJlc29sdmUgY2FsbGJhY2s6JywgZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmV0dXJuIFJlZmxlY3QuYXBwbHkocmVzb2x2ZVRhcmdldCwgcmVzb2x2ZVRoaXNBcmcsIHJlc29sdmVBcmdzKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICAvLyBXcmFwIHJlamVjdCB0byBlbmQgc3BhbiBvbiBlcnJvclxuICAgICAgICAgIGNvbnN0IG9yaWdpbmFsUmVqZWN0ID0gdGhpcy5yZWplY3Q7XG4gICAgICAgICAgdGhpcy5yZWplY3QgPSBuZXcgUHJveHkob3JpZ2luYWxSZWplY3QgLCB7XG4gICAgICAgICAgICBhcHBseTogKHJlamVjdFRhcmdldCwgcmVqZWN0VGhpc0FyZywgcmVqZWN0QXJncykgPT4ge1xuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHNwYW4uc2V0U3RhdHVzKHtcbiAgICAgICAgICAgICAgICAgIGNvZGU6IGNvcmUuU1BBTl9TVEFUVVNfRVJST1IsXG4gICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZWplY3RBcmdzPy5bMF0/Lm1lc3NhZ2UgfHwgJ3Vua25vd25fZXJyb3InLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKHNlbWFudGljQ29udmVudGlvbnMuQVRUUl9EQl9SRVNQT05TRV9TVEFUVVNfQ09ERSwgcmVqZWN0QXJncz8uWzBdPy5jb2RlIHx8ICd1bmtub3duJyk7XG4gICAgICAgICAgICAgICAgc3Bhbi5zZXRBdHRyaWJ1dGUoc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX0VSUk9SX1RZUEUsIHJlamVjdEFyZ3M/LlswXT8ubmFtZSB8fCAndW5rbm93bicpO1xuICAgICAgICAgICAgICAgIHNlbGYuX3NldE9wZXJhdGlvbk5hbWUoc3Bhbiwgc2FuaXRpemVkU3FsUXVlcnkpO1xuICAgICAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcuZXJyb3IoJ0Vycm9yIGVuZGluZyBzcGFuIGluIHJlamVjdCBjYWxsYmFjazonLCBlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gUmVmbGVjdC5hcHBseShyZWplY3RUYXJnZXQsIHJlamVjdFRoaXNBcmcsIHJlamVjdEFyZ3MpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxIYW5kbGUuYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgc3Bhbi5zZXRTdGF0dXMoe1xuICAgICAgICAgICAgICBjb2RlOiBjb3JlLlNQQU5fU1RBVFVTX0VSUk9SLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlIGluc3RhbmNlb2YgRXJyb3IgPyBlLm1lc3NhZ2UgOiAndW5rbm93bl9lcnJvcicsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHNwYW4uZW5kKCk7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfTtcblxuICAgIC8vIFN0b3JlIG9yaWdpbmFsIGZvciB1bnBhdGNoIC0gbXVzdCBiZSBzZXQgb24gdGhlIE5FVyBwYXRjaGVkIGZ1bmN0aW9uXG4gICAgbW9kdWxlRXhwb3J0cy5RdWVyeS5wcm90b3R5cGUuaGFuZGxlLl9fc2VudHJ5X29yaWdpbmFsX18gPSBvcmlnaW5hbEhhbmRsZTtcblxuICAgIHJldHVybiBtb2R1bGVFeHBvcnRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSBvcmlnaW5hbCBRdWVyeS5wcm90b3R5cGUuaGFuZGxlIG1ldGhvZC5cbiAgICovXG4gICBfdW5wYXRjaFF1ZXJ5UHJvdG90eXBlKG1vZHVsZUV4cG9ydHNcblxuKSB7XG4gICAgaWYgKG1vZHVsZUV4cG9ydHMuUXVlcnkucHJvdG90eXBlLmhhbmRsZS5fX3NlbnRyeV9vcmlnaW5hbF9fKSB7XG4gICAgICBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUgPSBtb2R1bGVFeHBvcnRzLlF1ZXJ5LnByb3RvdHlwZS5oYW5kbGUuX19zZW50cnlfb3JpZ2luYWxfXztcbiAgICB9XG4gICAgcmV0dXJuIG1vZHVsZUV4cG9ydHM7XG4gIH1cbn1cblxuY29uc3QgX3Bvc3RncmVzSnNJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucykgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6IElOVEVHUkFUSU9OX05BTUUsXG4gICAgc2V0dXBPbmNlKCkge1xuICAgICAgaW5zdHJ1bWVudFBvc3RncmVzSnMob3B0aW9ucyk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFtwb3N0Z3Jlc10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcG9zdGdyZXMpIGxpYnJhcnkuXG4gKlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2Bwb3N0Z3Jlc0ludGVncmF0aW9uYCBkb2N1bWVudGF0aW9uXShodHRwczovL2RvY3Muc2VudHJ5LmlvL3BsYXRmb3Jtcy9qYXZhc2NyaXB0L2d1aWRlcy9ub2RlL2NvbmZpZ3VyYXRpb24vaW50ZWdyYXRpb25zL3Bvc3RncmVzLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkucG9zdGdyZXNKc0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuXG5jb25zdCBwb3N0Z3Jlc0pzSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKF9wb3N0Z3Jlc0pzSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLlBvc3RncmVzSnNJbnN0cnVtZW50YXRpb24gPSBQb3N0Z3Jlc0pzSW5zdHJ1bWVudGF0aW9uO1xuZXhwb3J0cy5pbnN0cnVtZW50UG9zdGdyZXNKcyA9IGluc3RydW1lbnRQb3N0Z3Jlc0pzO1xuZXhwb3J0cy5wb3N0Z3Jlc0pzSW50ZWdyYXRpb24gPSBwb3N0Z3Jlc0pzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wb3N0Z3Jlc2pzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/postgresjs.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst instrumentation = __webpack_require__(/*! @prisma/instrumentation */ \"(ssr)/./node_modules/.pnpm/@prisma+instrumentation@7.6.0_@opentelemetry+api@1.9.1/node_modules/@prisma/instrumentation/dist/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst INTEGRATION_NAME = 'Prisma';\n\nfunction isPrismaV6TracingHelper(helper) {\n return !!helper && typeof helper === 'object' && 'dispatchEngineSpans' in helper;\n}\n\nfunction getPrismaTracingHelper() {\n const prismaInstrumentationObject = (globalThis ).PRISMA_INSTRUMENTATION;\n const prismaTracingHelper =\n prismaInstrumentationObject &&\n typeof prismaInstrumentationObject === 'object' &&\n 'helper' in prismaInstrumentationObject\n ? prismaInstrumentationObject.helper\n : undefined;\n\n return prismaTracingHelper;\n}\n\nclass SentryPrismaInteropInstrumentation extends instrumentation.PrismaInstrumentation {\n constructor(options) {\n super(options?.instrumentationConfig);\n }\n\n enable() {\n super.enable();\n\n // The PrismaIntegration (super class) defines a global variable `global[\"PRISMA_INSTRUMENTATION\"]` when `enable()` is called. This global variable holds a \"TracingHelper\" which Prisma uses internally to create tracing data. It's their way of not depending on OTEL with their main package. The sucky thing is, prisma broke the interface of the tracing helper with the v6 major update. This means that if you use Prisma 5 with the v6 instrumentation (or vice versa) Prisma just blows up, because tries to call methods on the helper that no longer exist.\n // Because we actually want to use the v6 instrumentation and not blow up in Prisma 5 user's faces, what we're doing here is backfilling the v5 method (`createEngineSpan`) with a noop so that no longer crashes when it attempts to call that function.\n const prismaTracingHelper = getPrismaTracingHelper();\n\n if (isPrismaV6TracingHelper(prismaTracingHelper)) {\n // Inspired & adjusted from https://github.com/prisma/prisma/tree/5.22.0/packages/instrumentation\n (prismaTracingHelper ).createEngineSpan = (\n engineSpanEvent,\n ) => {\n const tracer = api.trace.getTracer('prismaV5Compatibility') ;\n\n // Prisma v5 relies on being able to create spans with a specific span & trace ID\n // this is no longer possible in OTEL v2, there is no public API to do this anymore\n // So in order to kind of hack this possibility, we rely on the internal `_idGenerator` property\n // This is used to generate the random IDs, and we overwrite this temporarily to generate static IDs\n // This is flawed and may not work, e.g. if the code is bundled and the private property is renamed\n // in such cases, these spans will not be captured and some Prisma spans will be missing\n const initialIdGenerator = tracer._idGenerator;\n\n if (!initialIdGenerator) {\n core.consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn(\n '[Sentry] Could not find _idGenerator on tracer, skipping Prisma v5 compatibility - some Prisma spans may be missing!',\n );\n });\n\n return;\n }\n\n try {\n engineSpanEvent.spans.forEach(engineSpan => {\n const kind = engineSpanKindToOTELSpanKind(engineSpan.kind);\n\n const parentSpanId = engineSpan.parent_span_id;\n const spanId = engineSpan.span_id;\n const traceId = engineSpan.trace_id;\n\n const links = engineSpan.links?.map(link => {\n return {\n context: {\n traceId: link.trace_id,\n spanId: link.span_id,\n traceFlags: api.TraceFlags.SAMPLED,\n },\n };\n });\n\n const ctx = api.trace.setSpanContext(api.context.active(), {\n traceId,\n spanId: parentSpanId,\n traceFlags: api.TraceFlags.SAMPLED,\n });\n\n api.context.with(ctx, () => {\n const temporaryIdGenerator = {\n generateTraceId: () => {\n return traceId;\n },\n generateSpanId: () => {\n return spanId;\n },\n };\n\n tracer._idGenerator = temporaryIdGenerator;\n\n const span = tracer.startSpan(engineSpan.name, {\n kind,\n links,\n startTime: engineSpan.start_time,\n attributes: engineSpan.attributes,\n });\n\n span.end(engineSpan.end_time);\n\n tracer._idGenerator = initialIdGenerator;\n });\n });\n } finally {\n // Ensure we always restore this at the end, even if something errors\n tracer._idGenerator = initialIdGenerator;\n }\n };\n }\n }\n}\n\nfunction engineSpanKindToOTELSpanKind(engineSpanKind) {\n switch (engineSpanKind) {\n case 'client':\n return api.SpanKind.CLIENT;\n case 'internal':\n default: // Other span kinds aren't currently supported\n return api.SpanKind.INTERNAL;\n }\n}\n\nconst instrumentPrisma = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, options => {\n return new SentryPrismaInteropInstrumentation(options);\n});\n\n/**\n * Adds Sentry tracing instrumentation for the [prisma](https://www.npmjs.com/package/prisma) library.\n * For more information, see the [`prismaIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/).\n *\n * NOTE: By default, this integration works with Prisma version 6.\n * To get performance instrumentation for other Prisma versions,\n * 1. Install the `@prisma/instrumentation` package with the desired version.\n * 1. Pass a `new PrismaInstrumentation()` instance as exported from `@prisma/instrumentation` to the `prismaInstrumentation` option of this integration:\n *\n * ```js\n * import { PrismaInstrumentation } from '@prisma/instrumentation'\n *\n * Sentry.init({\n * integrations: [\n * prismaIntegration({\n * // Override the default instrumentation that Sentry uses\n * prismaInstrumentation: new PrismaInstrumentation()\n * })\n * ]\n * })\n * ```\n *\n * The passed instrumentation instance will override the default instrumentation instance the integration would use, while the `prismaIntegration` will still ensure data compatibility for the various Prisma versions.\n * 1. Depending on your Prisma version (prior to version 6), add `previewFeatures = [\"tracing\"]` to the client generator block of your Prisma schema:\n *\n * ```\n * generator client {\n * provider = \"prisma-client-js\"\n * previewFeatures = [\"tracing\"]\n * }\n * ```\n */\nconst prismaIntegration = core.defineIntegration((options) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n instrumentPrisma(options);\n },\n setup(client) {\n // If no tracing helper exists, we skip any work here\n // this means that prisma is not being used\n if (!getPrismaTracingHelper()) {\n return;\n }\n\n client.on('spanStart', span => {\n const spanJSON = core.spanToJSON(span);\n if (spanJSON.description?.startsWith('prisma:')) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.prisma');\n }\n\n // Make sure we use the query text as the span name, for ex. SELECT * FROM \"User\" WHERE \"id\" = $1\n if (spanJSON.description === 'prisma:engine:db_query' && spanJSON.data['db.query.text']) {\n span.updateName(spanJSON.data['db.query.text'] );\n }\n\n // In Prisma v5.22+, the `db.system` attribute is automatically set\n // On older versions, this is missing, so we add it here\n if (spanJSON.description === 'prisma:engine:db_query' && !spanJSON.data['db.system']) {\n span.setAttribute('db.system', 'prisma');\n }\n });\n },\n };\n});\n\nexports.instrumentPrisma = instrumentPrisma;\nexports.prismaIntegration = prismaIntegration;\n//# sourceMappingURL=prisma.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcHJpc21hLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLFlBQVksbUJBQU8sQ0FBQyxrSUFBb0I7QUFDeEMsd0JBQXdCLG1CQUFPLENBQUMscUtBQXlCO0FBQ3pELGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7O0FBRTVDOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7O0FBRVg7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBLGFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWU7O0FBRWY7O0FBRUE7QUFDQSxhQUFhO0FBQ2IsV0FBVztBQUNYLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLHdCQUF3QjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQsd0JBQXdCO0FBQ3hCLHlCQUF5QjtBQUN6QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy9wcmlzbWEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGFwaSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2FwaScpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnQHByaXNtYS9pbnN0cnVtZW50YXRpb24nKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgSU5URUdSQVRJT05fTkFNRSA9ICdQcmlzbWEnO1xuXG5mdW5jdGlvbiBpc1ByaXNtYVY2VHJhY2luZ0hlbHBlcihoZWxwZXIpIHtcbiAgcmV0dXJuICEhaGVscGVyICYmIHR5cGVvZiBoZWxwZXIgPT09ICdvYmplY3QnICYmICdkaXNwYXRjaEVuZ2luZVNwYW5zJyBpbiBoZWxwZXI7XG59XG5cbmZ1bmN0aW9uIGdldFByaXNtYVRyYWNpbmdIZWxwZXIoKSB7XG4gIGNvbnN0IHByaXNtYUluc3RydW1lbnRhdGlvbk9iamVjdCA9IChnbG9iYWxUaGlzICkuUFJJU01BX0lOU1RSVU1FTlRBVElPTjtcbiAgY29uc3QgcHJpc21hVHJhY2luZ0hlbHBlciA9XG4gICAgcHJpc21hSW5zdHJ1bWVudGF0aW9uT2JqZWN0ICYmXG4gICAgdHlwZW9mIHByaXNtYUluc3RydW1lbnRhdGlvbk9iamVjdCA9PT0gJ29iamVjdCcgJiZcbiAgICAnaGVscGVyJyBpbiBwcmlzbWFJbnN0cnVtZW50YXRpb25PYmplY3RcbiAgICAgID8gcHJpc21hSW5zdHJ1bWVudGF0aW9uT2JqZWN0LmhlbHBlclxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgcmV0dXJuIHByaXNtYVRyYWNpbmdIZWxwZXI7XG59XG5cbmNsYXNzIFNlbnRyeVByaXNtYUludGVyb3BJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uUHJpc21hSW5zdHJ1bWVudGF0aW9uIHtcbiAgIGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcbiAgICBzdXBlcihvcHRpb25zPy5pbnN0cnVtZW50YXRpb25Db25maWcpO1xuICB9XG5cbiAgIGVuYWJsZSgpIHtcbiAgICBzdXBlci5lbmFibGUoKTtcblxuICAgIC8vIFRoZSBQcmlzbWFJbnRlZ3JhdGlvbiAoc3VwZXIgY2xhc3MpIGRlZmluZXMgYSBnbG9iYWwgdmFyaWFibGUgYGdsb2JhbFtcIlBSSVNNQV9JTlNUUlVNRU5UQVRJT05cIl1gIHdoZW4gYGVuYWJsZSgpYCBpcyBjYWxsZWQuIFRoaXMgZ2xvYmFsIHZhcmlhYmxlIGhvbGRzIGEgXCJUcmFjaW5nSGVscGVyXCIgd2hpY2ggUHJpc21hIHVzZXMgaW50ZXJuYWxseSB0byBjcmVhdGUgdHJhY2luZyBkYXRhLiBJdCdzIHRoZWlyIHdheSBvZiBub3QgZGVwZW5kaW5nIG9uIE9URUwgd2l0aCB0aGVpciBtYWluIHBhY2thZ2UuIFRoZSBzdWNreSB0aGluZyBpcywgcHJpc21hIGJyb2tlIHRoZSBpbnRlcmZhY2Ugb2YgdGhlIHRyYWNpbmcgaGVscGVyIHdpdGggdGhlIHY2IG1ham9yIHVwZGF0ZS4gVGhpcyBtZWFucyB0aGF0IGlmIHlvdSB1c2UgUHJpc21hIDUgd2l0aCB0aGUgdjYgaW5zdHJ1bWVudGF0aW9uIChvciB2aWNlIHZlcnNhKSBQcmlzbWEganVzdCBibG93cyB1cCwgYmVjYXVzZSB0cmllcyB0byBjYWxsIG1ldGhvZHMgb24gdGhlIGhlbHBlciB0aGF0IG5vIGxvbmdlciBleGlzdC5cbiAgICAvLyBCZWNhdXNlIHdlIGFjdHVhbGx5IHdhbnQgdG8gdXNlIHRoZSB2NiBpbnN0cnVtZW50YXRpb24gYW5kIG5vdCBibG93IHVwIGluIFByaXNtYSA1IHVzZXIncyBmYWNlcywgd2hhdCB3ZSdyZSBkb2luZyBoZXJlIGlzIGJhY2tmaWxsaW5nIHRoZSB2NSBtZXRob2QgKGBjcmVhdGVFbmdpbmVTcGFuYCkgd2l0aCBhIG5vb3Agc28gdGhhdCBubyBsb25nZXIgY3Jhc2hlcyB3aGVuIGl0IGF0dGVtcHRzIHRvIGNhbGwgdGhhdCBmdW5jdGlvbi5cbiAgICBjb25zdCBwcmlzbWFUcmFjaW5nSGVscGVyID0gZ2V0UHJpc21hVHJhY2luZ0hlbHBlcigpO1xuXG4gICAgaWYgKGlzUHJpc21hVjZUcmFjaW5nSGVscGVyKHByaXNtYVRyYWNpbmdIZWxwZXIpKSB7XG4gICAgICAvLyBJbnNwaXJlZCAmIGFkanVzdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ByaXNtYS9wcmlzbWEvdHJlZS81LjIyLjAvcGFja2FnZXMvaW5zdHJ1bWVudGF0aW9uXG4gICAgICAocHJpc21hVHJhY2luZ0hlbHBlciApLmNyZWF0ZUVuZ2luZVNwYW4gPSAoXG4gICAgICAgIGVuZ2luZVNwYW5FdmVudCxcbiAgICAgICkgPT4ge1xuICAgICAgICBjb25zdCB0cmFjZXIgPSBhcGkudHJhY2UuZ2V0VHJhY2VyKCdwcmlzbWFWNUNvbXBhdGliaWxpdHknKSA7XG5cbiAgICAgICAgLy8gUHJpc21hIHY1IHJlbGllcyBvbiBiZWluZyBhYmxlIHRvIGNyZWF0ZSBzcGFucyB3aXRoIGEgc3BlY2lmaWMgc3BhbiAmIHRyYWNlIElEXG4gICAgICAgIC8vIHRoaXMgaXMgbm8gbG9uZ2VyIHBvc3NpYmxlIGluIE9URUwgdjIsIHRoZXJlIGlzIG5vIHB1YmxpYyBBUEkgdG8gZG8gdGhpcyBhbnltb3JlXG4gICAgICAgIC8vIFNvIGluIG9yZGVyIHRvIGtpbmQgb2YgaGFjayB0aGlzIHBvc3NpYmlsaXR5LCB3ZSByZWx5IG9uIHRoZSBpbnRlcm5hbCBgX2lkR2VuZXJhdG9yYCBwcm9wZXJ0eVxuICAgICAgICAvLyBUaGlzIGlzIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIHJhbmRvbSBJRHMsIGFuZCB3ZSBvdmVyd3JpdGUgdGhpcyB0ZW1wb3JhcmlseSB0byBnZW5lcmF0ZSBzdGF0aWMgSURzXG4gICAgICAgIC8vIFRoaXMgaXMgZmxhd2VkIGFuZCBtYXkgbm90IHdvcmssIGUuZy4gaWYgdGhlIGNvZGUgaXMgYnVuZGxlZCBhbmQgdGhlIHByaXZhdGUgcHJvcGVydHkgaXMgcmVuYW1lZFxuICAgICAgICAvLyBpbiBzdWNoIGNhc2VzLCB0aGVzZSBzcGFucyB3aWxsIG5vdCBiZSBjYXB0dXJlZCBhbmQgc29tZSBQcmlzbWEgc3BhbnMgd2lsbCBiZSBtaXNzaW5nXG4gICAgICAgIGNvbnN0IGluaXRpYWxJZEdlbmVyYXRvciA9IHRyYWNlci5faWRHZW5lcmF0b3I7XG5cbiAgICAgICAgaWYgKCFpbml0aWFsSWRHZW5lcmF0b3IpIHtcbiAgICAgICAgICBjb3JlLmNvbnNvbGVTYW5kYm94KCgpID0+IHtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgICdbU2VudHJ5XSBDb3VsZCBub3QgZmluZCBfaWRHZW5lcmF0b3Igb24gdHJhY2VyLCBza2lwcGluZyBQcmlzbWEgdjUgY29tcGF0aWJpbGl0eSAtIHNvbWUgUHJpc21hIHNwYW5zIG1heSBiZSBtaXNzaW5nIScsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBlbmdpbmVTcGFuRXZlbnQuc3BhbnMuZm9yRWFjaChlbmdpbmVTcGFuID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGtpbmQgPSBlbmdpbmVTcGFuS2luZFRvT1RFTFNwYW5LaW5kKGVuZ2luZVNwYW4ua2luZCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHBhcmVudFNwYW5JZCA9IGVuZ2luZVNwYW4ucGFyZW50X3NwYW5faWQ7XG4gICAgICAgICAgICBjb25zdCBzcGFuSWQgPSBlbmdpbmVTcGFuLnNwYW5faWQ7XG4gICAgICAgICAgICBjb25zdCB0cmFjZUlkID0gZW5naW5lU3Bhbi50cmFjZV9pZDtcblxuICAgICAgICAgICAgY29uc3QgbGlua3MgPSBlbmdpbmVTcGFuLmxpbmtzPy5tYXAobGluayA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgdHJhY2VJZDogbGluay50cmFjZV9pZCxcbiAgICAgICAgICAgICAgICAgIHNwYW5JZDogbGluay5zcGFuX2lkLFxuICAgICAgICAgICAgICAgICAgdHJhY2VGbGFnczogYXBpLlRyYWNlRmxhZ3MuU0FNUExFRCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGN0eCA9IGFwaS50cmFjZS5zZXRTcGFuQ29udGV4dChhcGkuY29udGV4dC5hY3RpdmUoKSwge1xuICAgICAgICAgICAgICB0cmFjZUlkLFxuICAgICAgICAgICAgICBzcGFuSWQ6IHBhcmVudFNwYW5JZCxcbiAgICAgICAgICAgICAgdHJhY2VGbGFnczogYXBpLlRyYWNlRmxhZ3MuU0FNUExFRCxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBhcGkuY29udGV4dC53aXRoKGN0eCwgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB0ZW1wb3JhcnlJZEdlbmVyYXRvciA9IHtcbiAgICAgICAgICAgICAgICBnZW5lcmF0ZVRyYWNlSWQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB0cmFjZUlkO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZ2VuZXJhdGVTcGFuSWQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBzcGFuSWQ7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICB0cmFjZXIuX2lkR2VuZXJhdG9yID0gdGVtcG9yYXJ5SWRHZW5lcmF0b3I7XG5cbiAgICAgICAgICAgICAgY29uc3Qgc3BhbiA9IHRyYWNlci5zdGFydFNwYW4oZW5naW5lU3Bhbi5uYW1lLCB7XG4gICAgICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgICAgICBsaW5rcyxcbiAgICAgICAgICAgICAgICBzdGFydFRpbWU6IGVuZ2luZVNwYW4uc3RhcnRfdGltZSxcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBlbmdpbmVTcGFuLmF0dHJpYnV0ZXMsXG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgIHNwYW4uZW5kKGVuZ2luZVNwYW4uZW5kX3RpbWUpO1xuXG4gICAgICAgICAgICAgIHRyYWNlci5faWRHZW5lcmF0b3IgPSBpbml0aWFsSWRHZW5lcmF0b3I7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAvLyBFbnN1cmUgd2UgYWx3YXlzIHJlc3RvcmUgdGhpcyBhdCB0aGUgZW5kLCBldmVuIGlmIHNvbWV0aGluZyBlcnJvcnNcbiAgICAgICAgICB0cmFjZXIuX2lkR2VuZXJhdG9yID0gaW5pdGlhbElkR2VuZXJhdG9yO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBlbmdpbmVTcGFuS2luZFRvT1RFTFNwYW5LaW5kKGVuZ2luZVNwYW5LaW5kKSB7XG4gIHN3aXRjaCAoZW5naW5lU3BhbktpbmQpIHtcbiAgICBjYXNlICdjbGllbnQnOlxuICAgICAgcmV0dXJuIGFwaS5TcGFuS2luZC5DTElFTlQ7XG4gICAgY2FzZSAnaW50ZXJuYWwnOlxuICAgIGRlZmF1bHQ6IC8vIE90aGVyIHNwYW4ga2luZHMgYXJlbid0IGN1cnJlbnRseSBzdXBwb3J0ZWRcbiAgICAgIHJldHVybiBhcGkuU3BhbktpbmQuSU5URVJOQUw7XG4gIH1cbn1cblxuY29uc3QgaW5zdHJ1bWVudFByaXNtYSA9IG5vZGVDb3JlLmdlbmVyYXRlSW5zdHJ1bWVudE9uY2UoSU5URUdSQVRJT05fTkFNRSwgb3B0aW9ucyA9PiB7XG4gIHJldHVybiBuZXcgU2VudHJ5UHJpc21hSW50ZXJvcEluc3RydW1lbnRhdGlvbihvcHRpb25zKTtcbn0pO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW3ByaXNtYV0oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcHJpc21hKSBsaWJyYXJ5LlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgW2BwcmlzbWFJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy9wcmlzbWEvKS5cbiAqXG4gKiBOT1RFOiBCeSBkZWZhdWx0LCB0aGlzIGludGVncmF0aW9uIHdvcmtzIHdpdGggUHJpc21hIHZlcnNpb24gNi5cbiAqIFRvIGdldCBwZXJmb3JtYW5jZSBpbnN0cnVtZW50YXRpb24gZm9yIG90aGVyIFByaXNtYSB2ZXJzaW9ucyxcbiAqIDEuIEluc3RhbGwgdGhlIGBAcHJpc21hL2luc3RydW1lbnRhdGlvbmAgcGFja2FnZSB3aXRoIHRoZSBkZXNpcmVkIHZlcnNpb24uXG4gKiAxLiBQYXNzIGEgYG5ldyBQcmlzbWFJbnN0cnVtZW50YXRpb24oKWAgaW5zdGFuY2UgYXMgZXhwb3J0ZWQgZnJvbSBgQHByaXNtYS9pbnN0cnVtZW50YXRpb25gIHRvIHRoZSBgcHJpc21hSW5zdHJ1bWVudGF0aW9uYCBvcHRpb24gb2YgdGhpcyBpbnRlZ3JhdGlvbjpcbiAqXG4gKiAgICBgYGBqc1xuICogICAgaW1wb3J0IHsgUHJpc21hSW5zdHJ1bWVudGF0aW9uIH0gZnJvbSAnQHByaXNtYS9pbnN0cnVtZW50YXRpb24nXG4gKlxuICogICAgU2VudHJ5LmluaXQoe1xuICogICAgICBpbnRlZ3JhdGlvbnM6IFtcbiAqICAgICAgICBwcmlzbWFJbnRlZ3JhdGlvbih7XG4gKiAgICAgICAgICAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdCBpbnN0cnVtZW50YXRpb24gdGhhdCBTZW50cnkgdXNlc1xuICogICAgICAgICAgcHJpc21hSW5zdHJ1bWVudGF0aW9uOiBuZXcgUHJpc21hSW5zdHJ1bWVudGF0aW9uKClcbiAqICAgICAgICB9KVxuICogICAgICBdXG4gKiAgICB9KVxuICogICAgYGBgXG4gKlxuICogICAgVGhlIHBhc3NlZCBpbnN0cnVtZW50YXRpb24gaW5zdGFuY2Ugd2lsbCBvdmVycmlkZSB0aGUgZGVmYXVsdCBpbnN0cnVtZW50YXRpb24gaW5zdGFuY2UgdGhlIGludGVncmF0aW9uIHdvdWxkIHVzZSwgd2hpbGUgdGhlIGBwcmlzbWFJbnRlZ3JhdGlvbmAgd2lsbCBzdGlsbCBlbnN1cmUgZGF0YSBjb21wYXRpYmlsaXR5IGZvciB0aGUgdmFyaW91cyBQcmlzbWEgdmVyc2lvbnMuXG4gKiAxLiBEZXBlbmRpbmcgb24geW91ciBQcmlzbWEgdmVyc2lvbiAocHJpb3IgdG8gdmVyc2lvbiA2KSwgYWRkIGBwcmV2aWV3RmVhdHVyZXMgPSBbXCJ0cmFjaW5nXCJdYCB0byB0aGUgY2xpZW50IGdlbmVyYXRvciBibG9jayBvZiB5b3VyIFByaXNtYSBzY2hlbWE6XG4gKlxuICogICAgYGBgXG4gKiAgICBnZW5lcmF0b3IgY2xpZW50IHtcbiAqICAgICAgcHJvdmlkZXIgPSBcInByaXNtYS1jbGllbnQtanNcIlxuICogICAgICBwcmV2aWV3RmVhdHVyZXMgPSBbXCJ0cmFjaW5nXCJdXG4gKiAgICB9XG4gKiAgICBgYGBcbiAqL1xuY29uc3QgcHJpc21hSW50ZWdyYXRpb24gPSBjb3JlLmRlZmluZUludGVncmF0aW9uKChvcHRpb25zKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50UHJpc21hKG9wdGlvbnMpO1xuICAgIH0sXG4gICAgc2V0dXAoY2xpZW50KSB7XG4gICAgICAvLyBJZiBubyB0cmFjaW5nIGhlbHBlciBleGlzdHMsIHdlIHNraXAgYW55IHdvcmsgaGVyZVxuICAgICAgLy8gdGhpcyBtZWFucyB0aGF0IHByaXNtYSBpcyBub3QgYmVpbmcgdXNlZFxuICAgICAgaWYgKCFnZXRQcmlzbWFUcmFjaW5nSGVscGVyKCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjbGllbnQub24oJ3NwYW5TdGFydCcsIHNwYW4gPT4ge1xuICAgICAgICBjb25zdCBzcGFuSlNPTiA9IGNvcmUuc3BhblRvSlNPTihzcGFuKTtcbiAgICAgICAgaWYgKHNwYW5KU09OLmRlc2NyaXB0aW9uPy5zdGFydHNXaXRoKCdwcmlzbWE6JykpIHtcbiAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9TRU5UUllfT1JJR0lOLCAnYXV0by5kYi5vdGVsLnByaXNtYScpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTWFrZSBzdXJlIHdlIHVzZSB0aGUgcXVlcnkgdGV4dCBhcyB0aGUgc3BhbiBuYW1lLCBmb3IgZXguIFNFTEVDVCAqIEZST00gXCJVc2VyXCIgV0hFUkUgXCJpZFwiID0gJDFcbiAgICAgICAgaWYgKHNwYW5KU09OLmRlc2NyaXB0aW9uID09PSAncHJpc21hOmVuZ2luZTpkYl9xdWVyeScgJiYgc3BhbkpTT04uZGF0YVsnZGIucXVlcnkudGV4dCddKSB7XG4gICAgICAgICAgc3Bhbi51cGRhdGVOYW1lKHNwYW5KU09OLmRhdGFbJ2RiLnF1ZXJ5LnRleHQnXSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW4gUHJpc21hIHY1LjIyKywgdGhlIGBkYi5zeXN0ZW1gIGF0dHJpYnV0ZSBpcyBhdXRvbWF0aWNhbGx5IHNldFxuICAgICAgICAvLyBPbiBvbGRlciB2ZXJzaW9ucywgdGhpcyBpcyBtaXNzaW5nLCBzbyB3ZSBhZGQgaXQgaGVyZVxuICAgICAgICBpZiAoc3BhbkpTT04uZGVzY3JpcHRpb24gPT09ICdwcmlzbWE6ZW5naW5lOmRiX3F1ZXJ5JyAmJiAhc3BhbkpTT04uZGF0YVsnZGIuc3lzdGVtJ10pIHtcbiAgICAgICAgICBzcGFuLnNldEF0dHJpYnV0ZSgnZGIuc3lzdGVtJywgJ3ByaXNtYScpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICB9O1xufSk7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudFByaXNtYSA9IGluc3RydW1lbnRQcmlzbWE7XG5leHBvcnRzLnByaXNtYUludGVncmF0aW9uID0gcHJpc21hSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1wcmlzbWEuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/prisma.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js":
/*!*******************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js ***!
\*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationIoredis = __webpack_require__(/*! @opentelemetry/instrumentation-ioredis */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-ioredis@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-ioredis/build/src/index.js\");\nconst instrumentationRedis = __webpack_require__(/*! @opentelemetry/instrumentation-redis */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-redis@0.62.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-redis/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst redisCache = __webpack_require__(/*! ../../utils/redisCache.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js\");\n\nconst INTEGRATION_NAME = 'Redis';\n\n/* Only exported for testing purposes */\nexports._redisOptions = {};\n\n/* Only exported for testing purposes */\nconst cacheResponseHook = (\n span,\n redisCommand,\n cmdArgs,\n response,\n) => {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.redis');\n\n const safeKey = redisCache.getCacheKeySafely(redisCommand, cmdArgs);\n const cacheOperation = redisCache.getCacheOperation(redisCommand);\n\n if (\n !safeKey ||\n !cacheOperation ||\n !exports._redisOptions.cachePrefixes ||\n !redisCache.shouldConsiderForCache(redisCommand, safeKey, exports._redisOptions.cachePrefixes)\n ) {\n // not relevant for cache\n return;\n }\n\n // otel/ioredis seems to be using the old standard, as there was a change to those params: https://github.com/open-telemetry/opentelemetry-specification/issues/3199\n // We are using params based on the docs: https://opentelemetry.io/docs/specs/semconv/attributes-registry/network/\n const networkPeerAddress = core.spanToJSON(span).data['net.peer.name'];\n const networkPeerPort = core.spanToJSON(span).data['net.peer.port'];\n if (networkPeerPort && networkPeerAddress) {\n span.setAttributes({ 'network.peer.address': networkPeerAddress, 'network.peer.port': networkPeerPort });\n }\n\n const cacheItemSize = redisCache.calculateCacheItemSize(response);\n\n if (cacheItemSize) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_CACHE_ITEM_SIZE, cacheItemSize);\n }\n\n if (redisCache.isInCommands(redisCache.GET_COMMANDS, redisCommand) && cacheItemSize !== undefined) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_CACHE_HIT, cacheItemSize > 0);\n }\n\n span.setAttributes({\n [core.SEMANTIC_ATTRIBUTE_SENTRY_OP]: cacheOperation,\n [core.SEMANTIC_ATTRIBUTE_CACHE_KEY]: safeKey,\n });\n\n // todo: change to string[] once EAP supports it\n const spanDescription = safeKey.join(', ');\n\n span.updateName(\n exports._redisOptions.maxCacheKeyLength ? core.truncate(spanDescription, exports._redisOptions.maxCacheKeyLength) : spanDescription,\n );\n};\n\nconst instrumentIORedis = nodeCore.generateInstrumentOnce(`${INTEGRATION_NAME}.IORedis`, () => {\n return new instrumentationIoredis.IORedisInstrumentation({\n responseHook: cacheResponseHook,\n });\n});\n\nconst instrumentRedisModule = nodeCore.generateInstrumentOnce(`${INTEGRATION_NAME}.Redis`, () => {\n return new instrumentationRedis.RedisInstrumentation({\n responseHook: cacheResponseHook,\n });\n});\n\n/** To be able to preload all Redis OTel instrumentations with just one ID (\"Redis\"), all the instrumentations are generated in this one function */\nconst instrumentRedis = Object.assign(\n () => {\n instrumentIORedis();\n instrumentRedisModule();\n\n // todo: implement them gradually\n // new LegacyRedisInstrumentation({}),\n },\n { id: INTEGRATION_NAME },\n);\n\nconst _redisIntegration = ((options = {}) => {\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n exports._redisOptions = options;\n instrumentRedis();\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [redis](https://www.npmjs.com/package/redis) and\n * [ioredis](https://www.npmjs.com/package/ioredis) libraries.\n *\n * For more information, see the [`redisIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/redis/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.redisIntegration()],\n * });\n * ```\n */\nconst redisIntegration = core.defineIntegration(_redisIntegration);\n\nexports.cacheResponseHook = cacheResponseHook;\nexports.instrumentRedis = instrumentRedis;\nexports.redisIntegration = redisIntegration;\n//# sourceMappingURL=redis.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvcmVkaXMuanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsK0JBQStCLG1CQUFPLENBQUMsd05BQXdDO0FBQy9FLDZCQUE2QixtQkFBTyxDQUFDLGtOQUFzQztBQUMzRSxhQUFhLG1CQUFPLENBQUMsa0hBQWM7QUFDbkMsaUJBQWlCLG1CQUFPLENBQUMsZ09BQW1CO0FBQzVDLG1CQUFtQixtQkFBTyxDQUFDLDBJQUEyQjs7QUFFdEQ7O0FBRUE7QUFDQSxxQkFBcUI7O0FBRXJCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QixrRkFBa0Y7QUFDM0c7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsNkRBQTZELGlCQUFpQjtBQUM5RTtBQUNBO0FBQ0EsR0FBRztBQUNILENBQUM7O0FBRUQsaUVBQWlFLGlCQUFpQjtBQUNsRjtBQUNBO0FBQ0EsR0FBRztBQUNILENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHdDQUF3QztBQUN4QyxHQUFHO0FBQ0gsSUFBSSxzQkFBc0I7QUFDMUI7O0FBRUEsd0NBQXdDO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBLE1BQU0scUJBQXFCO0FBQzNCO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBLHlCQUF5QjtBQUN6Qix1QkFBdUI7QUFDdkIsd0JBQXdCO0FBQ3hCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL3JlZGlzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25Jb3JlZGlzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLWlvcmVkaXMnKTtcbmNvbnN0IGluc3RydW1lbnRhdGlvblJlZGlzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLXJlZGlzJyk7XG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCByZWRpc0NhY2hlID0gcmVxdWlyZSgnLi4vLi4vdXRpbHMvcmVkaXNDYWNoZS5qcycpO1xuXG5jb25zdCBJTlRFR1JBVElPTl9OQU1FID0gJ1JlZGlzJztcblxuLyogT25seSBleHBvcnRlZCBmb3IgdGVzdGluZyBwdXJwb3NlcyAqL1xuZXhwb3J0cy5fcmVkaXNPcHRpb25zID0ge307XG5cbi8qIE9ubHkgZXhwb3J0ZWQgZm9yIHRlc3RpbmcgcHVycG9zZXMgKi9cbmNvbnN0IGNhY2hlUmVzcG9uc2VIb29rID0gKFxuICBzcGFuLFxuICByZWRpc0NvbW1hbmQsXG4gIGNtZEFyZ3MsXG4gIHJlc3BvbnNlLFxuKSA9PiB7XG4gIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU4sICdhdXRvLmRiLm90ZWwucmVkaXMnKTtcblxuICBjb25zdCBzYWZlS2V5ID0gcmVkaXNDYWNoZS5nZXRDYWNoZUtleVNhZmVseShyZWRpc0NvbW1hbmQsIGNtZEFyZ3MpO1xuICBjb25zdCBjYWNoZU9wZXJhdGlvbiA9IHJlZGlzQ2FjaGUuZ2V0Q2FjaGVPcGVyYXRpb24ocmVkaXNDb21tYW5kKTtcblxuICBpZiAoXG4gICAgIXNhZmVLZXkgfHxcbiAgICAhY2FjaGVPcGVyYXRpb24gfHxcbiAgICAhZXhwb3J0cy5fcmVkaXNPcHRpb25zLmNhY2hlUHJlZml4ZXMgfHxcbiAgICAhcmVkaXNDYWNoZS5zaG91bGRDb25zaWRlckZvckNhY2hlKHJlZGlzQ29tbWFuZCwgc2FmZUtleSwgZXhwb3J0cy5fcmVkaXNPcHRpb25zLmNhY2hlUHJlZml4ZXMpXG4gICkge1xuICAgIC8vIG5vdCByZWxldmFudCBmb3IgY2FjaGVcbiAgICByZXR1cm47XG4gIH1cblxuICAvLyBvdGVsL2lvcmVkaXMgc2VlbXMgdG8gYmUgdXNpbmcgdGhlIG9sZCBzdGFuZGFyZCwgYXMgdGhlcmUgd2FzIGEgY2hhbmdlIHRvIHRob3NlIHBhcmFtczogaHR0cHM6Ly9naXRodWIuY29tL29wZW4tdGVsZW1ldHJ5L29wZW50ZWxlbWV0cnktc3BlY2lmaWNhdGlvbi9pc3N1ZXMvMzE5OVxuICAvLyBXZSBhcmUgdXNpbmcgcGFyYW1zIGJhc2VkIG9uIHRoZSBkb2NzOiBodHRwczovL29wZW50ZWxlbWV0cnkuaW8vZG9jcy9zcGVjcy9zZW1jb252L2F0dHJpYnV0ZXMtcmVnaXN0cnkvbmV0d29yay9cbiAgY29uc3QgbmV0d29ya1BlZXJBZGRyZXNzID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGFbJ25ldC5wZWVyLm5hbWUnXTtcbiAgY29uc3QgbmV0d29ya1BlZXJQb3J0ID0gY29yZS5zcGFuVG9KU09OKHNwYW4pLmRhdGFbJ25ldC5wZWVyLnBvcnQnXTtcbiAgaWYgKG5ldHdvcmtQZWVyUG9ydCAmJiBuZXR3b3JrUGVlckFkZHJlc3MpIHtcbiAgICBzcGFuLnNldEF0dHJpYnV0ZXMoeyAnbmV0d29yay5wZWVyLmFkZHJlc3MnOiBuZXR3b3JrUGVlckFkZHJlc3MsICduZXR3b3JrLnBlZXIucG9ydCc6IG5ldHdvcmtQZWVyUG9ydCB9KTtcbiAgfVxuXG4gIGNvbnN0IGNhY2hlSXRlbVNpemUgPSByZWRpc0NhY2hlLmNhbGN1bGF0ZUNhY2hlSXRlbVNpemUocmVzcG9uc2UpO1xuXG4gIGlmIChjYWNoZUl0ZW1TaXplKSB7XG4gICAgc3Bhbi5zZXRBdHRyaWJ1dGUoY29yZS5TRU1BTlRJQ19BVFRSSUJVVEVfQ0FDSEVfSVRFTV9TSVpFLCBjYWNoZUl0ZW1TaXplKTtcbiAgfVxuXG4gIGlmIChyZWRpc0NhY2hlLmlzSW5Db21tYW5kcyhyZWRpc0NhY2hlLkdFVF9DT01NQU5EUywgcmVkaXNDb21tYW5kKSAmJiBjYWNoZUl0ZW1TaXplICE9PSB1bmRlZmluZWQpIHtcbiAgICBzcGFuLnNldEF0dHJpYnV0ZShjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9DQUNIRV9ISVQsIGNhY2hlSXRlbVNpemUgPiAwKTtcbiAgfVxuXG4gIHNwYW4uc2V0QXR0cmlidXRlcyh7XG4gICAgW2NvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUF06IGNhY2hlT3BlcmF0aW9uLFxuICAgIFtjb3JlLlNFTUFOVElDX0FUVFJJQlVURV9DQUNIRV9LRVldOiBzYWZlS2V5LFxuICB9KTtcblxuICAvLyB0b2RvOiBjaGFuZ2UgdG8gc3RyaW5nW10gb25jZSBFQVAgc3VwcG9ydHMgaXRcbiAgY29uc3Qgc3BhbkRlc2NyaXB0aW9uID0gc2FmZUtleS5qb2luKCcsICcpO1xuXG4gIHNwYW4udXBkYXRlTmFtZShcbiAgICBleHBvcnRzLl9yZWRpc09wdGlvbnMubWF4Q2FjaGVLZXlMZW5ndGggPyBjb3JlLnRydW5jYXRlKHNwYW5EZXNjcmlwdGlvbiwgZXhwb3J0cy5fcmVkaXNPcHRpb25zLm1heENhY2hlS2V5TGVuZ3RoKSA6IHNwYW5EZXNjcmlwdGlvbixcbiAgKTtcbn07XG5cbmNvbnN0IGluc3RydW1lbnRJT1JlZGlzID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShgJHtJTlRFR1JBVElPTl9OQU1FfS5JT1JlZGlzYCwgKCkgPT4ge1xuICByZXR1cm4gbmV3IGluc3RydW1lbnRhdGlvbklvcmVkaXMuSU9SZWRpc0luc3RydW1lbnRhdGlvbih7XG4gICAgcmVzcG9uc2VIb29rOiBjYWNoZVJlc3BvbnNlSG9vayxcbiAgfSk7XG59KTtcblxuY29uc3QgaW5zdHJ1bWVudFJlZGlzTW9kdWxlID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShgJHtJTlRFR1JBVElPTl9OQU1FfS5SZWRpc2AsICgpID0+IHtcbiAgcmV0dXJuIG5ldyBpbnN0cnVtZW50YXRpb25SZWRpcy5SZWRpc0luc3RydW1lbnRhdGlvbih7XG4gICAgcmVzcG9uc2VIb29rOiBjYWNoZVJlc3BvbnNlSG9vayxcbiAgfSk7XG59KTtcblxuLyoqIFRvIGJlIGFibGUgdG8gcHJlbG9hZCBhbGwgUmVkaXMgT1RlbCBpbnN0cnVtZW50YXRpb25zIHdpdGgganVzdCBvbmUgSUQgKFwiUmVkaXNcIiksIGFsbCB0aGUgaW5zdHJ1bWVudGF0aW9ucyBhcmUgZ2VuZXJhdGVkIGluIHRoaXMgb25lIGZ1bmN0aW9uICAqL1xuY29uc3QgaW5zdHJ1bWVudFJlZGlzID0gT2JqZWN0LmFzc2lnbihcbiAgKCkgPT4ge1xuICAgIGluc3RydW1lbnRJT1JlZGlzKCk7XG4gICAgaW5zdHJ1bWVudFJlZGlzTW9kdWxlKCk7XG5cbiAgICAvLyB0b2RvOiBpbXBsZW1lbnQgdGhlbSBncmFkdWFsbHlcbiAgICAvLyBuZXcgTGVnYWN5UmVkaXNJbnN0cnVtZW50YXRpb24oe30pLFxuICB9LFxuICB7IGlkOiBJTlRFR1JBVElPTl9OQU1FIH0sXG4pO1xuXG5jb25zdCBfcmVkaXNJbnRlZ3JhdGlvbiA9ICgob3B0aW9ucyA9IHt9KSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBleHBvcnRzLl9yZWRpc09wdGlvbnMgPSBvcHRpb25zO1xuICAgICAgaW5zdHJ1bWVudFJlZGlzKCk7XG4gICAgfSxcbiAgfTtcbn0pIDtcblxuLyoqXG4gKiBBZGRzIFNlbnRyeSB0cmFjaW5nIGluc3RydW1lbnRhdGlvbiBmb3IgdGhlIFtyZWRpc10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvcmVkaXMpIGFuZFxuICogW2lvcmVkaXNdKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2lvcmVkaXMpIGxpYnJhcmllcy5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYHJlZGlzSW50ZWdyYXRpb25gIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZG9jcy5zZW50cnkuaW8vcGxhdGZvcm1zL2phdmFzY3JpcHQvZ3VpZGVzL25vZGUvY29uZmlndXJhdGlvbi9pbnRlZ3JhdGlvbnMvcmVkaXMvKS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgU2VudHJ5ID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlJyk7XG4gKlxuICogU2VudHJ5LmluaXQoe1xuICogIGludGVncmF0aW9uczogW1NlbnRyeS5yZWRpc0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgcmVkaXNJbnRlZ3JhdGlvbiA9IGNvcmUuZGVmaW5lSW50ZWdyYXRpb24oX3JlZGlzSW50ZWdyYXRpb24pO1xuXG5leHBvcnRzLmNhY2hlUmVzcG9uc2VIb29rID0gY2FjaGVSZXNwb25zZUhvb2s7XG5leHBvcnRzLmluc3RydW1lbnRSZWRpcyA9IGluc3RydW1lbnRSZWRpcztcbmV4cG9ydHMucmVkaXNJbnRlZ3JhdGlvbiA9IHJlZGlzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD1yZWRpcy5qcy5tYXBcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOlswXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/redis.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js":
/*!*********************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js ***!
\*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentationTedious = __webpack_require__(/*! @opentelemetry/instrumentation-tedious */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation-tedious@0.33.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation-tedious/build/src/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\n\nconst TEDIUS_INSTRUMENTED_METHODS = new Set([\n 'callProcedure',\n 'execSql',\n 'execSqlBatch',\n 'execBulkLoad',\n 'prepare',\n 'execute',\n]);\n\nconst INTEGRATION_NAME = 'Tedious';\n\nconst instrumentTedious = nodeCore.generateInstrumentOnce(INTEGRATION_NAME, () => new instrumentationTedious.TediousInstrumentation({}));\n\nconst _tediousIntegration = (() => {\n let instrumentationWrappedCallback;\n\n return {\n name: INTEGRATION_NAME,\n setupOnce() {\n const instrumentation = instrumentTedious();\n instrumentationWrappedCallback = nodeCore.instrumentWhenWrapped(instrumentation);\n },\n\n setup(client) {\n instrumentationWrappedCallback?.(() =>\n client.on('spanStart', span => {\n const { description, data } = core.spanToJSON(span);\n // Tedius integration always set a span name and `db.system` attribute to `mssql`.\n if (!description || data['db.system'] !== 'mssql') {\n return;\n }\n\n const operation = description.split(' ')[0] || '';\n if (TEDIUS_INSTRUMENTED_METHODS.has(operation)) {\n span.setAttribute(core.SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, 'auto.db.otel.tedious');\n }\n }),\n );\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [tedious](https://www.npmjs.com/package/tedious) library.\n *\n * For more information, see the [`tediousIntegration` documentation](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/tedious/).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.tediousIntegration()],\n * });\n * ```\n */\nconst tediousIntegration = core.defineIntegration(_tediousIntegration);\n\nexports.instrumentTedious = instrumentTedious;\nexports.tediousIntegration = tediousIntegration;\n//# sourceMappingURL=tedious.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdGVkaW91cy5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RSwrQkFBK0IsbUJBQU8sQ0FBQyx3TkFBd0M7QUFDL0UsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjs7QUFFNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSxzSUFBc0k7O0FBRXRJO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLG9CQUFvQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7O0FBRUEseUJBQXlCO0FBQ3pCLDBCQUEwQjtBQUMxQiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy90ZWRpb3VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBpbnN0cnVtZW50YXRpb25UZWRpb3VzID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvaW5zdHJ1bWVudGF0aW9uLXRlZGlvdXMnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcblxuY29uc3QgVEVESVVTX0lOU1RSVU1FTlRFRF9NRVRIT0RTID0gbmV3IFNldChbXG4gICdjYWxsUHJvY2VkdXJlJyxcbiAgJ2V4ZWNTcWwnLFxuICAnZXhlY1NxbEJhdGNoJyxcbiAgJ2V4ZWNCdWxrTG9hZCcsXG4gICdwcmVwYXJlJyxcbiAgJ2V4ZWN1dGUnLFxuXSk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnVGVkaW91cyc7XG5cbmNvbnN0IGluc3RydW1lbnRUZWRpb3VzID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShJTlRFR1JBVElPTl9OQU1FLCAoKSA9PiBuZXcgaW5zdHJ1bWVudGF0aW9uVGVkaW91cy5UZWRpb3VzSW5zdHJ1bWVudGF0aW9uKHt9KSk7XG5cbmNvbnN0IF90ZWRpb3VzSW50ZWdyYXRpb24gPSAoKCkgPT4ge1xuICBsZXQgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogSU5URUdSQVRJT05fTkFNRSxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBjb25zdCBpbnN0cnVtZW50YXRpb24gPSBpbnN0cnVtZW50VGVkaW91cygpO1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrID0gbm9kZUNvcmUuaW5zdHJ1bWVudFdoZW5XcmFwcGVkKGluc3RydW1lbnRhdGlvbik7XG4gICAgfSxcblxuICAgIHNldHVwKGNsaWVudCkge1xuICAgICAgaW5zdHJ1bWVudGF0aW9uV3JhcHBlZENhbGxiYWNrPy4oKCkgPT5cbiAgICAgICAgY2xpZW50Lm9uKCdzcGFuU3RhcnQnLCBzcGFuID0+IHtcbiAgICAgICAgICBjb25zdCB7IGRlc2NyaXB0aW9uLCBkYXRhIH0gPSBjb3JlLnNwYW5Ub0pTT04oc3Bhbik7XG4gICAgICAgICAgLy8gVGVkaXVzIGludGVncmF0aW9uIGFsd2F5cyBzZXQgYSBzcGFuIG5hbWUgYW5kIGBkYi5zeXN0ZW1gIGF0dHJpYnV0ZSB0byBgbXNzcWxgLlxuICAgICAgICAgIGlmICghZGVzY3JpcHRpb24gfHwgZGF0YVsnZGIuc3lzdGVtJ10gIT09ICdtc3NxbCcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBvcGVyYXRpb24gPSBkZXNjcmlwdGlvbi5zcGxpdCgnICcpWzBdIHx8ICcnO1xuICAgICAgICAgIGlmIChURURJVVNfSU5TVFJVTUVOVEVEX01FVEhPRFMuaGFzKG9wZXJhdGlvbikpIHtcbiAgICAgICAgICAgIHNwYW4uc2V0QXR0cmlidXRlKGNvcmUuU0VNQU5USUNfQVRUUklCVVRFX1NFTlRSWV9PUklHSU4sICdhdXRvLmRiLm90ZWwudGVkaW91cycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0sXG4gIH07XG59KSA7XG5cbi8qKlxuICogQWRkcyBTZW50cnkgdHJhY2luZyBpbnN0cnVtZW50YXRpb24gZm9yIHRoZSBbdGVkaW91c10oaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvdGVkaW91cykgbGlicmFyeS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBbYHRlZGlvdXNJbnRlZ3JhdGlvbmAgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9kb2NzLnNlbnRyeS5pby9wbGF0Zm9ybXMvamF2YXNjcmlwdC9ndWlkZXMvbm9kZS9jb25maWd1cmF0aW9uL2ludGVncmF0aW9ucy90ZWRpb3VzLykuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkudGVkaW91c0ludGVncmF0aW9uKCldLFxuICogfSk7XG4gKiBgYGBcbiAqL1xuY29uc3QgdGVkaW91c0ludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfdGVkaW91c0ludGVncmF0aW9uKTtcblxuZXhwb3J0cy5pbnN0cnVtZW50VGVkaW91cyA9IGluc3RydW1lbnRUZWRpb3VzO1xuZXhwb3J0cy50ZWRpb3VzSW50ZWdyYXRpb24gPSB0ZWRpb3VzSW50ZWdyYXRpb247XG4vLyMgc291cmNlTWFwcGluZ1VSTD10ZWRpb3VzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/tedious.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js ***!
\********************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst INTEGRATION_NAME = 'VercelAI';\n\nexports.INTEGRATION_NAME = INTEGRATION_NAME;\n//# sourceMappingURL=constants.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvY29uc3RhbnRzLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFOztBQUVBLHdCQUF3QjtBQUN4QiIsInNvdXJjZXMiOlsiL1VzZXJzL21hcmNtaW50ZWwvUHJvamVjdHMvZS10aWIuY29tL25vZGVfbW9kdWxlcy8ucG5wbS9Ac2VudHJ5K25vZGVAMTAuNDcuMC9ub2RlX21vZHVsZXMvQHNlbnRyeS9ub2RlL2J1aWxkL2Nqcy9pbnRlZ3JhdGlvbnMvdHJhY2luZy92ZXJjZWxhaS9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IElOVEVHUkFUSU9OX05BTUUgPSAnVmVyY2VsQUknO1xuXG5leHBvcnRzLklOVEVHUkFUSU9OX05BTUUgPSBJTlRFR1JBVElPTl9OQU1FO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y29uc3RhbnRzLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js":
/*!****************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js ***!
\****************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js\");\nconst instrumentation = __webpack_require__(/*! ./instrumentation.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js\");\n\nconst instrumentVercelAi = nodeCore.generateInstrumentOnce(constants.INTEGRATION_NAME, () => new instrumentation.SentryVercelAiInstrumentation({}));\n\n/**\n * Determines if the integration should be forced based on environment and package availability.\n * Returns true if the 'ai' package is available.\n */\nfunction shouldForceIntegration(client) {\n const modules = client.getIntegrationByName('Modules');\n return !!modules?.getModules?.()?.ai;\n}\n\nconst _vercelAIIntegration = ((options = {}) => {\n let instrumentation;\n\n return {\n name: constants.INTEGRATION_NAME,\n options,\n setupOnce() {\n instrumentation = instrumentVercelAi();\n },\n afterAllSetup(client) {\n // Auto-detect if we should force the integration when running with 'ai' package available\n // Note that this can only be detected if the 'Modules' integration is available, and running in CJS mode\n const shouldForce = options.force ?? shouldForceIntegration(client);\n\n if (shouldForce) {\n core.addVercelAiProcessors(client);\n } else {\n instrumentation?.callWhenPatched(() => core.addVercelAiProcessors(client));\n }\n },\n };\n}) ;\n\n/**\n * Adds Sentry tracing instrumentation for the [ai](https://www.npmjs.com/package/ai) library.\n * This integration is not enabled by default, you need to manually add it.\n *\n * For more information, see the [`ai` documentation](https://sdk.vercel.ai/docs/ai-sdk-core/telemetry).\n *\n * @example\n * ```javascript\n * const Sentry = require('@sentry/node');\n *\n * Sentry.init({\n * integrations: [Sentry.vercelAIIntegration()],\n * });\n * ```\n *\n * This integration adds tracing support to all `ai` function calls.\n * You need to opt-in to collecting spans for a specific call,\n * you can do so by setting `experimental_telemetry.isEnabled` to `true` in the first argument of the function call.\n *\n * ```javascript\n * const result = await generateText({\n * model: openai('gpt-4-turbo'),\n * experimental_telemetry: { isEnabled: true },\n * });\n * ```\n *\n * If you want to collect inputs and outputs for a specific call, you must specifically opt-in to each\n * function call by setting `experimental_telemetry.recordInputs` and `experimental_telemetry.recordOutputs`\n * to `true`.\n *\n * ```javascript\n * const result = await generateText({\n * model: openai('gpt-4-turbo'),\n * experimental_telemetry: { isEnabled: true, recordInputs: true, recordOutputs: true },\n * });\n */\nconst vercelAIIntegration = core.defineIntegration(_vercelAIIntegration);\n\nexports.instrumentVercelAi = instrumentVercelAi;\nexports.vercelAIIntegration = vercelAIIntegration;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvaW5kZXguanMiLCJtYXBwaW5ncyI6IkFBQUEscURBQXFELGlCQUFpQjs7QUFFdEUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxrQkFBa0IsbUJBQU8sQ0FBQyxzSkFBZ0I7QUFDMUMsd0JBQXdCLG1CQUFPLENBQUMsa0tBQXNCOztBQUV0RCxpSkFBaUo7O0FBRWpKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsMkNBQTJDO0FBQzNDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLGlCQUFpQjtBQUNoRCxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLDBEQUEwRDtBQUN4RixJQUFJO0FBQ0o7QUFDQTs7QUFFQSwwQkFBMEI7QUFDMUIsMkJBQTJCO0FBQzNCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL3ZlcmNlbGFpL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXG5jb25zdCBjb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9jb3JlJyk7XG5jb25zdCBub2RlQ29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZS1jb3JlJyk7XG5jb25zdCBjb25zdGFudHMgPSByZXF1aXJlKCcuL2NvbnN0YW50cy5qcycpO1xuY29uc3QgaW5zdHJ1bWVudGF0aW9uID0gcmVxdWlyZSgnLi9pbnN0cnVtZW50YXRpb24uanMnKTtcblxuY29uc3QgaW5zdHJ1bWVudFZlcmNlbEFpID0gbm9kZUNvcmUuZ2VuZXJhdGVJbnN0cnVtZW50T25jZShjb25zdGFudHMuSU5URUdSQVRJT05fTkFNRSwgKCkgPT4gbmV3IGluc3RydW1lbnRhdGlvbi5TZW50cnlWZXJjZWxBaUluc3RydW1lbnRhdGlvbih7fSkpO1xuXG4vKipcbiAqIERldGVybWluZXMgaWYgdGhlIGludGVncmF0aW9uIHNob3VsZCBiZSBmb3JjZWQgYmFzZWQgb24gZW52aXJvbm1lbnQgYW5kIHBhY2thZ2UgYXZhaWxhYmlsaXR5LlxuICogUmV0dXJucyB0cnVlIGlmIHRoZSAnYWknIHBhY2thZ2UgaXMgYXZhaWxhYmxlLlxuICovXG5mdW5jdGlvbiBzaG91bGRGb3JjZUludGVncmF0aW9uKGNsaWVudCkge1xuICBjb25zdCBtb2R1bGVzID0gY2xpZW50LmdldEludGVncmF0aW9uQnlOYW1lKCdNb2R1bGVzJyk7XG4gIHJldHVybiAhIW1vZHVsZXM/LmdldE1vZHVsZXM/LigpPy5haTtcbn1cblxuY29uc3QgX3ZlcmNlbEFJSW50ZWdyYXRpb24gPSAoKG9wdGlvbnMgPSB7fSkgPT4ge1xuICBsZXQgaW5zdHJ1bWVudGF0aW9uO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogY29uc3RhbnRzLklOVEVHUkFUSU9OX05BTUUsXG4gICAgb3B0aW9ucyxcbiAgICBzZXR1cE9uY2UoKSB7XG4gICAgICBpbnN0cnVtZW50YXRpb24gPSBpbnN0cnVtZW50VmVyY2VsQWkoKTtcbiAgICB9LFxuICAgIGFmdGVyQWxsU2V0dXAoY2xpZW50KSB7XG4gICAgICAvLyBBdXRvLWRldGVjdCBpZiB3ZSBzaG91bGQgZm9yY2UgdGhlIGludGVncmF0aW9uIHdoZW4gcnVubmluZyB3aXRoICdhaScgcGFja2FnZSBhdmFpbGFibGVcbiAgICAgIC8vIE5vdGUgdGhhdCB0aGlzIGNhbiBvbmx5IGJlIGRldGVjdGVkIGlmIHRoZSAnTW9kdWxlcycgaW50ZWdyYXRpb24gaXMgYXZhaWxhYmxlLCBhbmQgcnVubmluZyBpbiBDSlMgbW9kZVxuICAgICAgY29uc3Qgc2hvdWxkRm9yY2UgPSBvcHRpb25zLmZvcmNlID8/IHNob3VsZEZvcmNlSW50ZWdyYXRpb24oY2xpZW50KTtcblxuICAgICAgaWYgKHNob3VsZEZvcmNlKSB7XG4gICAgICAgIGNvcmUuYWRkVmVyY2VsQWlQcm9jZXNzb3JzKGNsaWVudCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpbnN0cnVtZW50YXRpb24/LmNhbGxXaGVuUGF0Y2hlZCgoKSA9PiBjb3JlLmFkZFZlcmNlbEFpUHJvY2Vzc29ycyhjbGllbnQpKTtcbiAgICAgIH1cbiAgICB9LFxuICB9O1xufSkgO1xuXG4vKipcbiAqIEFkZHMgU2VudHJ5IHRyYWNpbmcgaW5zdHJ1bWVudGF0aW9uIGZvciB0aGUgW2FpXShodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9haSkgbGlicmFyeS5cbiAqIFRoaXMgaW50ZWdyYXRpb24gaXMgbm90IGVuYWJsZWQgYnkgZGVmYXVsdCwgeW91IG5lZWQgdG8gbWFudWFsbHkgYWRkIGl0LlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIFtgYWlgIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vc2RrLnZlcmNlbC5haS9kb2NzL2FpLXNkay1jb3JlL3RlbGVtZXRyeSkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IFNlbnRyeSA9IHJlcXVpcmUoJ0BzZW50cnkvbm9kZScpO1xuICpcbiAqIFNlbnRyeS5pbml0KHtcbiAqICBpbnRlZ3JhdGlvbnM6IFtTZW50cnkudmVyY2VsQUlJbnRlZ3JhdGlvbigpXSxcbiAqIH0pO1xuICogYGBgXG4gKlxuICogVGhpcyBpbnRlZ3JhdGlvbiBhZGRzIHRyYWNpbmcgc3VwcG9ydCB0byBhbGwgYGFpYCBmdW5jdGlvbiBjYWxscy5cbiAqIFlvdSBuZWVkIHRvIG9wdC1pbiB0byBjb2xsZWN0aW5nIHNwYW5zIGZvciBhIHNwZWNpZmljIGNhbGwsXG4gKiB5b3UgY2FuIGRvIHNvIGJ5IHNldHRpbmcgYGV4cGVyaW1lbnRhbF90ZWxlbWV0cnkuaXNFbmFibGVkYCB0byBgdHJ1ZWAgaW4gdGhlIGZpcnN0IGFyZ3VtZW50IG9mIHRoZSBmdW5jdGlvbiBjYWxsLlxuICpcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGdlbmVyYXRlVGV4dCh7XG4gKiAgIG1vZGVsOiBvcGVuYWkoJ2dwdC00LXR1cmJvJyksXG4gKiAgIGV4cGVyaW1lbnRhbF90ZWxlbWV0cnk6IHsgaXNFbmFibGVkOiB0cnVlIH0sXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIElmIHlvdSB3YW50IHRvIGNvbGxlY3QgaW5wdXRzIGFuZCBvdXRwdXRzIGZvciBhIHNwZWNpZmljIGNhbGwsIHlvdSBtdXN0IHNwZWNpZmljYWxseSBvcHQtaW4gdG8gZWFjaFxuICogZnVuY3Rpb24gY2FsbCBieSBzZXR0aW5nIGBleHBlcmltZW50YWxfdGVsZW1ldHJ5LnJlY29yZElucHV0c2AgYW5kIGBleHBlcmltZW50YWxfdGVsZW1ldHJ5LnJlY29yZE91dHB1dHNgXG4gKiB0byBgdHJ1ZWAuXG4gKlxuICogYGBgamF2YXNjcmlwdFxuICogY29uc3QgcmVzdWx0ID0gYXdhaXQgZ2VuZXJhdGVUZXh0KHtcbiAqICBtb2RlbDogb3BlbmFpKCdncHQtNC10dXJibycpLFxuICogIGV4cGVyaW1lbnRhbF90ZWxlbWV0cnk6IHsgaXNFbmFibGVkOiB0cnVlLCByZWNvcmRJbnB1dHM6IHRydWUsIHJlY29yZE91dHB1dHM6IHRydWUgfSxcbiAqIH0pO1xuICovXG5jb25zdCB2ZXJjZWxBSUludGVncmF0aW9uID0gY29yZS5kZWZpbmVJbnRlZ3JhdGlvbihfdmVyY2VsQUlJbnRlZ3JhdGlvbik7XG5cbmV4cG9ydHMuaW5zdHJ1bWVudFZlcmNlbEFpID0gaW5zdHJ1bWVudFZlcmNlbEFpO1xuZXhwb3J0cy52ZXJjZWxBSUludGVncmF0aW9uID0gdmVyY2VsQUlJbnRlZ3JhdGlvbjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js ***!
\**************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval(";globalThis[\"_sentryRewritesTunnelPath\"] = undefined;globalThis[\"SENTRY_RELEASE\"] = undefined;globalThis[\"_sentryBasePath\"] = undefined;globalThis[\"_sentryNextJsVersion\"] = \"16.1.6\";globalThis[\"_sentryRewriteFramesDistDir\"] = \".next\";globalThis[\"_sentryVercelCronsConfig\"] = undefined;Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst instrumentation = __webpack_require__(/*! @opentelemetry/instrumentation */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+instrumentation@0.214.0_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/instrumentation/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst constants = __webpack_require__(/*! ./constants.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/constants.js\");\n\nconst SUPPORTED_VERSIONS = ['>=3.0.0 <7'];\n\n// List of patched methods\n// From: https://sdk.vercel.ai/docs/ai-sdk-core/telemetry#collected-data\nconst INSTRUMENTED_METHODS = [\n 'generateText',\n 'streamText',\n 'generateObject',\n 'streamObject',\n 'embed',\n 'embedMany',\n 'rerank',\n] ;\n\nfunction isToolError(obj) {\n if (typeof obj !== 'object' || obj === null) {\n return false;\n }\n\n const candidate = obj ;\n return (\n 'type' in candidate &&\n 'error' in candidate &&\n 'toolName' in candidate &&\n 'toolCallId' in candidate &&\n candidate.type === 'tool-error' &&\n candidate.error instanceof Error\n );\n}\n\n/**\n * Process tool call results: capture tool errors and clean up span context mappings.\n *\n * Error checking runs first (needs span context for linking), then cleanup removes all entries.\n * Tool errors are not rejected in Vercel AI V5 — they appear as metadata in the result content.\n */\nfunction processToolCallResults(result) {\n if (typeof result !== 'object' || result === null || !('content' in result)) {\n return;\n }\n\n const resultObj = result ;\n if (!Array.isArray(resultObj.content)) {\n return;\n }\n\n captureToolErrors(resultObj.content);\n cleanupToolCallSpanContexts(resultObj.content);\n}\n\nfunction captureToolErrors(content) {\n for (const item of content) {\n if (!isToolError(item)) {\n continue;\n }\n\n // Try to get the span context associated with this tool call ID\n const spanContext = core._INTERNAL_getSpanContextForToolCallId(item.toolCallId);\n\n if (spanContext) {\n // We have the span context, so link the error using span and trace IDs\n core.withScope(scope => {\n scope.setContext('trace', {\n trace_id: spanContext.traceId,\n span_id: spanContext.spanId,\n });\n\n scope.setTag('vercel.ai.tool.name', item.toolName);\n scope.setTag('vercel.ai.tool.callId', item.toolCallId);\n scope.setLevel('error');\n\n core.captureException(item.error, {\n mechanism: {\n type: 'auto.vercelai.otel',\n handled: false,\n },\n });\n });\n } else {\n // Fallback: capture without span linking\n core.withScope(scope => {\n scope.setTag('vercel.ai.tool.name', item.toolName);\n scope.setTag('vercel.ai.tool.callId', item.toolCallId);\n scope.setLevel('error');\n\n core.captureException(item.error, {\n mechanism: {\n type: 'auto.vercelai.otel',\n handled: false,\n },\n });\n });\n }\n }\n}\n\n/**\n * Remove span context entries for all completed tool calls in the content array.\n */\nfunction cleanupToolCallSpanContexts(content) {\n for (const item of content) {\n if (\n typeof item === 'object' &&\n item !== null &&\n 'toolCallId' in item &&\n typeof (item ).toolCallId === 'string'\n ) {\n core._INTERNAL_cleanupToolCallSpanContext((item ).toolCallId );\n }\n }\n}\n\n/**\n * Determines whether to record inputs and outputs for Vercel AI telemetry based on the configuration hierarchy.\n *\n * The order of precedence is:\n * 1. The vercel ai integration options\n * 2. The experimental_telemetry options in the vercel ai method calls\n * 3. When telemetry is explicitly enabled (isEnabled: true), default to recording\n * 4. Otherwise, use the sendDefaultPii option from client options\n */\nfunction determineRecordingSettings(\n integrationRecordingOptions,\n methodTelemetryOptions,\n telemetryExplicitlyEnabled,\n defaultRecordingEnabled,\n) {\n const recordInputs =\n integrationRecordingOptions?.recordInputs !== undefined\n ? integrationRecordingOptions.recordInputs\n : methodTelemetryOptions.recordInputs !== undefined\n ? methodTelemetryOptions.recordInputs\n : telemetryExplicitlyEnabled === true\n ? true // When telemetry is explicitly enabled, default to recording inputs\n : defaultRecordingEnabled;\n\n const recordOutputs =\n integrationRecordingOptions?.recordOutputs !== undefined\n ? integrationRecordingOptions.recordOutputs\n : methodTelemetryOptions.recordOutputs !== undefined\n ? methodTelemetryOptions.recordOutputs\n : telemetryExplicitlyEnabled === true\n ? true // When telemetry is explicitly enabled, default to recording inputs\n : defaultRecordingEnabled;\n\n return { recordInputs, recordOutputs };\n}\n\n/**\n * This detects is added by the Sentry Vercel AI Integration to detect if the integration should\n * be enabled.\n *\n * It also patches the `ai` module to enable Vercel AI telemetry automatically for all methods.\n */\nclass SentryVercelAiInstrumentation extends instrumentation.InstrumentationBase {\n __init() {this._isPatched = false;}\n __init2() {this._callbacks = [];}\n\n constructor(config = {}) {\n super('@sentry/instrumentation-vercel-ai', core.SDK_VERSION, config);SentryVercelAiInstrumentation.prototype.__init.call(this);SentryVercelAiInstrumentation.prototype.__init2.call(this); }\n\n /**\n * Initializes the instrumentation by defining the modules to be patched.\n */\n init() {\n const module = new instrumentation.InstrumentationNodeModuleDefinition('ai', SUPPORTED_VERSIONS, this._patch.bind(this));\n return module;\n }\n\n /**\n * Call the provided callback when the module is patched.\n * If it has already been patched, the callback will be called immediately.\n */\n callWhenPatched(callback) {\n if (this._isPatched) {\n callback();\n } else {\n this._callbacks.push(callback);\n }\n }\n\n /**\n * Patches module exports to enable Vercel AI telemetry.\n */\n _patch(moduleExports) {\n this._isPatched = true;\n\n this._callbacks.forEach(callback => callback());\n this._callbacks = [];\n\n const generatePatch = (originalMethod) => {\n return new Proxy(originalMethod, {\n apply: (target, thisArg, args) => {\n const existingExperimentalTelemetry = args[0].experimental_telemetry || {};\n const isEnabled = existingExperimentalTelemetry.isEnabled;\n\n const client = core.getClient();\n const integration = client?.getIntegrationByName(constants.INTEGRATION_NAME);\n const integrationOptions = integration?.options;\n const shouldRecordInputsAndOutputs = integration ? Boolean(client?.getOptions().sendDefaultPii) : false;\n\n const { recordInputs, recordOutputs } = determineRecordingSettings(\n integrationOptions,\n existingExperimentalTelemetry,\n isEnabled,\n shouldRecordInputsAndOutputs,\n );\n\n args[0].experimental_telemetry = {\n ...existingExperimentalTelemetry,\n isEnabled: isEnabled !== undefined ? isEnabled : true,\n recordInputs,\n recordOutputs,\n };\n\n return core.handleCallbackErrors(\n () => Reflect.apply(target, thisArg, args),\n error => {\n // This error bubbles up to unhandledrejection handler (if not handled before),\n // where we do not know the active span anymore\n // So to circumvent this, we set the active span on the error object\n // which is picked up by the unhandledrejection handler\n if (error && typeof error === 'object') {\n core.addNonEnumerableProperty(error, '_sentry_active_span', core.getActiveSpan());\n }\n },\n () => {},\n result => {\n processToolCallResults(result);\n },\n );\n },\n });\n };\n\n // Is this an ESM module?\n // https://tc39.es/ecma262/#sec-module-namespace-objects\n if (Object.prototype.toString.call(moduleExports) === '[object Module]') {\n // In ESM we take the usual route and just replace the exports we want to instrument\n for (const method of INSTRUMENTED_METHODS) {\n // Skip methods that don't exist in this version of the AI SDK (e.g., rerank was added in v6)\n if (moduleExports[method] != null) {\n moduleExports[method] = generatePatch(moduleExports[method]);\n }\n }\n\n return moduleExports;\n } else {\n // In CJS we can't replace the exports in the original module because they\n // don't have setters, so we create a new object with the same properties\n const patchedModuleExports = INSTRUMENTED_METHODS.reduce((acc, curr) => {\n // Skip methods that don't exist in this version of the AI SDK (e.g., rerank was added in v6)\n if (moduleExports[curr] != null) {\n acc[curr] = generatePatch(moduleExports[curr]);\n }\n return acc;\n }, {} );\n\n return { ...moduleExports, ...patchedModuleExports };\n }\n }\n}\n\nexports.SentryVercelAiInstrumentation = SentryVercelAiInstrumentation;\nexports.cleanupToolCallSpanContexts = cleanupToolCallSpanContexts;\nexports.determineRecordingSettings = determineRecordingSettings;\nexports.processToolCallResults = processToolCallResults;\n//# sourceMappingURL=instrumentation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvaW50ZWdyYXRpb25zL3RyYWNpbmcvdmVyY2VsYWkvaW5zdHJ1bWVudGF0aW9uLmpzIiwibWFwcGluZ3MiOiJBQUFBLENBQUMsb0RBQW9ELHlDQUF5QywwQ0FBMEMsOENBQThDLG9EQUFvRCxtREFBbUQscURBQXFELGlCQUFpQjs7QUFFblcsd0JBQXdCLG1CQUFPLENBQUMsaU1BQWdDO0FBQ2hFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxrQkFBa0IsbUJBQU8sQ0FBQyxzSkFBZ0I7O0FBRTFDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTOztBQUVUO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWCxTQUFTO0FBQ1QsT0FBTztBQUNQLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYLFNBQVM7QUFDVCxPQUFPO0FBQ1A7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsV0FBVztBQUNYOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLGNBQWM7O0FBRWQsMEJBQTBCO0FBQzFCLHlFQUF5RSwwREFBMEQ7O0FBRW5JO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxrQkFBa0IsOEJBQThCO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLG9CQUFvQjtBQUNwQjtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxLQUFLOztBQUVaLGVBQWU7QUFDZjtBQUNBO0FBQ0E7O0FBRUEscUNBQXFDO0FBQ3JDLG1DQUFtQztBQUNuQyxrQ0FBa0M7QUFDbEMsOEJBQThCO0FBQzlCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL2ludGVncmF0aW9ucy90cmFjaW5nL3ZlcmNlbGFpL2luc3RydW1lbnRhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyI7Z2xvYmFsVGhpc1tcIl9zZW50cnlSZXdyaXRlc1R1bm5lbFBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIlNFTlRSWV9SRUxFQVNFXCJdID0gdW5kZWZpbmVkO2dsb2JhbFRoaXNbXCJfc2VudHJ5QmFzZVBhdGhcIl0gPSB1bmRlZmluZWQ7Z2xvYmFsVGhpc1tcIl9zZW50cnlOZXh0SnNWZXJzaW9uXCJdID0gXCIxNi4xLjZcIjtnbG9iYWxUaGlzW1wiX3NlbnRyeVJld3JpdGVGcmFtZXNEaXN0RGlyXCJdID0gXCIubmV4dFwiO2dsb2JhbFRoaXNbXCJfc2VudHJ5VmVyY2VsQ3JvbnNDb25maWdcIl0gPSB1bmRlZmluZWQ7T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IGluc3RydW1lbnRhdGlvbiA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L2luc3RydW1lbnRhdGlvbicpO1xuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3QgY29uc3RhbnRzID0gcmVxdWlyZSgnLi9jb25zdGFudHMuanMnKTtcblxuY29uc3QgU1VQUE9SVEVEX1ZFUlNJT05TID0gWyc+PTMuMC4wIDw3J107XG5cbi8vIExpc3Qgb2YgcGF0Y2hlZCBtZXRob2RzXG4vLyBGcm9tOiBodHRwczovL3Nkay52ZXJjZWwuYWkvZG9jcy9haS1zZGstY29yZS90ZWxlbWV0cnkjY29sbGVjdGVkLWRhdGFcbmNvbnN0IElOU1RSVU1FTlRFRF9NRVRIT0RTID0gW1xuICAnZ2VuZXJhdGVUZXh0JyxcbiAgJ3N0cmVhbVRleHQnLFxuICAnZ2VuZXJhdGVPYmplY3QnLFxuICAnc3RyZWFtT2JqZWN0JyxcbiAgJ2VtYmVkJyxcbiAgJ2VtYmVkTWFueScsXG4gICdyZXJhbmsnLFxuXSA7XG5cbmZ1bmN0aW9uIGlzVG9vbEVycm9yKG9iaikge1xuICBpZiAodHlwZW9mIG9iaiAhPT0gJ29iamVjdCcgfHwgb2JqID09PSBudWxsKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgY2FuZGlkYXRlID0gb2JqIDtcbiAgcmV0dXJuIChcbiAgICAndHlwZScgaW4gY2FuZGlkYXRlICYmXG4gICAgJ2Vycm9yJyBpbiBjYW5kaWRhdGUgJiZcbiAgICAndG9vbE5hbWUnIGluIGNhbmRpZGF0ZSAmJlxuICAgICd0b29sQ2FsbElkJyBpbiBjYW5kaWRhdGUgJiZcbiAgICBjYW5kaWRhdGUudHlwZSA9PT0gJ3Rvb2wtZXJyb3InICYmXG4gICAgY2FuZGlkYXRlLmVycm9yIGluc3RhbmNlb2YgRXJyb3JcbiAgKTtcbn1cblxuLyoqXG4gKiBQcm9jZXNzIHRvb2wgY2FsbCByZXN1bHRzOiBjYXB0dXJlIHRvb2wgZXJyb3JzIGFuZCBjbGVhbiB1cCBzcGFuIGNvbnRleHQgbWFwcGluZ3MuXG4gKlxuICogRXJyb3IgY2hlY2tpbmcgcnVucyBmaXJzdCAobmVlZHMgc3BhbiBjb250ZXh0IGZvciBsaW5raW5nKSwgdGhlbiBjbGVhbnVwIHJlbW92ZXMgYWxsIGVudHJpZXMuXG4gKiBUb29sIGVycm9ycyBhcmUgbm90IHJlamVjdGVkIGluIFZlcmNlbCBBSSBWNSDigJQgdGhleSBhcHBlYXIgYXMgbWV0YWRhdGEgaW4gdGhlIHJlc3VsdCBjb250ZW50LlxuICovXG5mdW5jdGlvbiBwcm9jZXNzVG9vbENhbGxSZXN1bHRzKHJlc3VsdCkge1xuICBpZiAodHlwZW9mIHJlc3VsdCAhPT0gJ29iamVjdCcgfHwgcmVzdWx0ID09PSBudWxsIHx8ICEoJ2NvbnRlbnQnIGluIHJlc3VsdCkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCByZXN1bHRPYmogPSByZXN1bHQgO1xuICBpZiAoIUFycmF5LmlzQXJyYXkocmVzdWx0T2JqLmNvbnRlbnQpKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY2FwdHVyZVRvb2xFcnJvcnMocmVzdWx0T2JqLmNvbnRlbnQpO1xuICBjbGVhbnVwVG9vbENhbGxTcGFuQ29udGV4dHMocmVzdWx0T2JqLmNvbnRlbnQpO1xufVxuXG5mdW5jdGlvbiBjYXB0dXJlVG9vbEVycm9ycyhjb250ZW50KSB7XG4gIGZvciAoY29uc3QgaXRlbSBvZiBjb250ZW50KSB7XG4gICAgaWYgKCFpc1Rvb2xFcnJvcihpdGVtKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gVHJ5IHRvIGdldCB0aGUgc3BhbiBjb250ZXh0IGFzc29jaWF0ZWQgd2l0aCB0aGlzIHRvb2wgY2FsbCBJRFxuICAgIGNvbnN0IHNwYW5Db250ZXh0ID0gY29yZS5fSU5URVJOQUxfZ2V0U3BhbkNvbnRleHRGb3JUb29sQ2FsbElkKGl0ZW0udG9vbENhbGxJZCk7XG5cbiAgICBpZiAoc3BhbkNvbnRleHQpIHtcbiAgICAgIC8vIFdlIGhhdmUgdGhlIHNwYW4gY29udGV4dCwgc28gbGluayB0aGUgZXJyb3IgdXNpbmcgc3BhbiBhbmQgdHJhY2UgSURzXG4gICAgICBjb3JlLndpdGhTY29wZShzY29wZSA9PiB7XG4gICAgICAgIHNjb3BlLnNldENvbnRleHQoJ3RyYWNlJywge1xuICAgICAgICAgIHRyYWNlX2lkOiBzcGFuQ29udGV4dC50cmFjZUlkLFxuICAgICAgICAgIHNwYW5faWQ6IHNwYW5Db250ZXh0LnNwYW5JZCxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJjZWwuYWkudG9vbC5uYW1lJywgaXRlbS50b29sTmFtZSk7XG4gICAgICAgIHNjb3BlLnNldFRhZygndmVyY2VsLmFpLnRvb2wuY2FsbElkJywgaXRlbS50b29sQ2FsbElkKTtcbiAgICAgICAgc2NvcGUuc2V0TGV2ZWwoJ2Vycm9yJyk7XG5cbiAgICAgICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGl0ZW0uZXJyb3IsIHtcbiAgICAgICAgICBtZWNoYW5pc206IHtcbiAgICAgICAgICAgIHR5cGU6ICdhdXRvLnZlcmNlbGFpLm90ZWwnLFxuICAgICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRmFsbGJhY2s6IGNhcHR1cmUgd2l0aG91dCBzcGFuIGxpbmtpbmdcbiAgICAgIGNvcmUud2l0aFNjb3BlKHNjb3BlID0+IHtcbiAgICAgICAgc2NvcGUuc2V0VGFnKCd2ZXJjZWwuYWkudG9vbC5uYW1lJywgaXRlbS50b29sTmFtZSk7XG4gICAgICAgIHNjb3BlLnNldFRhZygndmVyY2VsLmFpLnRvb2wuY2FsbElkJywgaXRlbS50b29sQ2FsbElkKTtcbiAgICAgICAgc2NvcGUuc2V0TGV2ZWwoJ2Vycm9yJyk7XG5cbiAgICAgICAgY29yZS5jYXB0dXJlRXhjZXB0aW9uKGl0ZW0uZXJyb3IsIHtcbiAgICAgICAgICBtZWNoYW5pc206IHtcbiAgICAgICAgICAgIHR5cGU6ICdhdXRvLnZlcmNlbGFpLm90ZWwnLFxuICAgICAgICAgICAgaGFuZGxlZDogZmFsc2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBSZW1vdmUgc3BhbiBjb250ZXh0IGVudHJpZXMgZm9yIGFsbCBjb21wbGV0ZWQgdG9vbCBjYWxscyBpbiB0aGUgY29udGVudCBhcnJheS5cbiAqL1xuZnVuY3Rpb24gY2xlYW51cFRvb2xDYWxsU3BhbkNvbnRleHRzKGNvbnRlbnQpIHtcbiAgZm9yIChjb25zdCBpdGVtIG9mIGNvbnRlbnQpIHtcbiAgICBpZiAoXG4gICAgICB0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcgJiZcbiAgICAgIGl0ZW0gIT09IG51bGwgJiZcbiAgICAgICd0b29sQ2FsbElkJyBpbiBpdGVtICYmXG4gICAgICB0eXBlb2YgKGl0ZW0gKS50b29sQ2FsbElkID09PSAnc3RyaW5nJ1xuICAgICkge1xuICAgICAgY29yZS5fSU5URVJOQUxfY2xlYW51cFRvb2xDYWxsU3BhbkNvbnRleHQoKGl0ZW0gKS50b29sQ2FsbElkICk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRvIHJlY29yZCBpbnB1dHMgYW5kIG91dHB1dHMgZm9yIFZlcmNlbCBBSSB0ZWxlbWV0cnkgYmFzZWQgb24gdGhlIGNvbmZpZ3VyYXRpb24gaGllcmFyY2h5LlxuICpcbiAqIFRoZSBvcmRlciBvZiBwcmVjZWRlbmNlIGlzOlxuICogMS4gVGhlIHZlcmNlbCBhaSBpbnRlZ3JhdGlvbiBvcHRpb25zXG4gKiAyLiBUaGUgZXhwZXJpbWVudGFsX3RlbGVtZXRyeSBvcHRpb25zIGluIHRoZSB2ZXJjZWwgYWkgbWV0aG9kIGNhbGxzXG4gKiAzLiBXaGVuIHRlbGVtZXRyeSBpcyBleHBsaWNpdGx5IGVuYWJsZWQgKGlzRW5hYmxlZDogdHJ1ZSksIGRlZmF1bHQgdG8gcmVjb3JkaW5nXG4gKiA0LiBPdGhlcndpc2UsIHVzZSB0aGUgc2VuZERlZmF1bHRQaWkgb3B0aW9uIGZyb20gY2xpZW50IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gZGV0ZXJtaW5lUmVjb3JkaW5nU2V0dGluZ3MoXG4gIGludGVncmF0aW9uUmVjb3JkaW5nT3B0aW9ucyxcbiAgbWV0aG9kVGVsZW1ldHJ5T3B0aW9ucyxcbiAgdGVsZW1ldHJ5RXhwbGljaXRseUVuYWJsZWQsXG4gIGRlZmF1bHRSZWNvcmRpbmdFbmFibGVkLFxuKSB7XG4gIGNvbnN0IHJlY29yZElucHV0cyA9XG4gICAgaW50ZWdyYXRpb25SZWNvcmRpbmdPcHRpb25zPy5yZWNvcmRJbnB1dHMgIT09IHVuZGVmaW5lZFxuICAgICAgPyBpbnRlZ3JhdGlvblJlY29yZGluZ09wdGlvbnMucmVjb3JkSW5wdXRzXG4gICAgICA6IG1ldGhvZFRlbGVtZXRyeU9wdGlvbnMucmVjb3JkSW5wdXRzICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyBtZXRob2RUZWxlbWV0cnlPcHRpb25zLnJlY29yZElucHV0c1xuICAgICAgICA6IHRlbGVtZXRyeUV4cGxpY2l0bHlFbmFibGVkID09PSB0cnVlXG4gICAgICAgICAgPyB0cnVlIC8vIFdoZW4gdGVsZW1ldHJ5IGlzIGV4cGxpY2l0bHkgZW5hYmxlZCwgZGVmYXVsdCB0byByZWNvcmRpbmcgaW5wdXRzXG4gICAgICAgICAgOiBkZWZhdWx0UmVjb3JkaW5nRW5hYmxlZDtcblxuICBjb25zdCByZWNvcmRPdXRwdXRzID1cbiAgICBpbnRlZ3JhdGlvblJlY29yZGluZ09wdGlvbnM/LnJlY29yZE91dHB1dHMgIT09IHVuZGVmaW5lZFxuICAgICAgPyBpbnRlZ3JhdGlvblJlY29yZGluZ09wdGlvbnMucmVjb3JkT3V0cHV0c1xuICAgICAgOiBtZXRob2RUZWxlbWV0cnlPcHRpb25zLnJlY29yZE91dHB1dHMgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IG1ldGhvZFRlbGVtZXRyeU9wdGlvbnMucmVjb3JkT3V0cHV0c1xuICAgICAgICA6IHRlbGVtZXRyeUV4cGxpY2l0bHlFbmFibGVkID09PSB0cnVlXG4gICAgICAgICAgPyB0cnVlIC8vIFdoZW4gdGVsZW1ldHJ5IGlzIGV4cGxpY2l0bHkgZW5hYmxlZCwgZGVmYXVsdCB0byByZWNvcmRpbmcgaW5wdXRzXG4gICAgICAgICAgOiBkZWZhdWx0UmVjb3JkaW5nRW5hYmxlZDtcblxuICByZXR1cm4geyByZWNvcmRJbnB1dHMsIHJlY29yZE91dHB1dHMgfTtcbn1cblxuLyoqXG4gKiBUaGlzIGRldGVjdHMgaXMgYWRkZWQgYnkgdGhlIFNlbnRyeSBWZXJjZWwgQUkgSW50ZWdyYXRpb24gdG8gZGV0ZWN0IGlmIHRoZSBpbnRlZ3JhdGlvbiBzaG91bGRcbiAqIGJlIGVuYWJsZWQuXG4gKlxuICogSXQgYWxzbyBwYXRjaGVzIHRoZSBgYWlgIG1vZHVsZSB0byBlbmFibGUgVmVyY2VsIEFJIHRlbGVtZXRyeSBhdXRvbWF0aWNhbGx5IGZvciBhbGwgbWV0aG9kcy5cbiAqL1xuY2xhc3MgU2VudHJ5VmVyY2VsQWlJbnN0cnVtZW50YXRpb24gZXh0ZW5kcyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uQmFzZSB7XG4gICBfX2luaXQoKSB7dGhpcy5faXNQYXRjaGVkID0gZmFsc2U7fVxuICAgX19pbml0MigpIHt0aGlzLl9jYWxsYmFja3MgPSBbXTt9XG5cbiAgIGNvbnN0cnVjdG9yKGNvbmZpZyA9IHt9KSB7XG4gICAgc3VwZXIoJ0BzZW50cnkvaW5zdHJ1bWVudGF0aW9uLXZlcmNlbC1haScsIGNvcmUuU0RLX1ZFUlNJT04sIGNvbmZpZyk7U2VudHJ5VmVyY2VsQWlJbnN0cnVtZW50YXRpb24ucHJvdG90eXBlLl9faW5pdC5jYWxsKHRoaXMpO1NlbnRyeVZlcmNlbEFpSW5zdHJ1bWVudGF0aW9uLnByb3RvdHlwZS5fX2luaXQyLmNhbGwodGhpcyk7ICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBpbnN0cnVtZW50YXRpb24gYnkgZGVmaW5pbmcgdGhlIG1vZHVsZXMgdG8gYmUgcGF0Y2hlZC5cbiAgICovXG4gICBpbml0KCkge1xuICAgIGNvbnN0IG1vZHVsZSA9IG5ldyBpbnN0cnVtZW50YXRpb24uSW5zdHJ1bWVudGF0aW9uTm9kZU1vZHVsZURlZmluaXRpb24oJ2FpJywgU1VQUE9SVEVEX1ZFUlNJT05TLCB0aGlzLl9wYXRjaC5iaW5kKHRoaXMpKTtcbiAgICByZXR1cm4gbW9kdWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhlIHByb3ZpZGVkIGNhbGxiYWNrIHdoZW4gdGhlIG1vZHVsZSBpcyBwYXRjaGVkLlxuICAgKiBJZiBpdCBoYXMgYWxyZWFkeSBiZWVuIHBhdGNoZWQsIHRoZSBjYWxsYmFjayB3aWxsIGJlIGNhbGxlZCBpbW1lZGlhdGVseS5cbiAgICovXG4gICBjYWxsV2hlblBhdGNoZWQoY2FsbGJhY2spIHtcbiAgICBpZiAodGhpcy5faXNQYXRjaGVkKSB7XG4gICAgICBjYWxsYmFjaygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jYWxsYmFja3MucHVzaChjYWxsYmFjayk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBhdGNoZXMgbW9kdWxlIGV4cG9ydHMgdG8gZW5hYmxlIFZlcmNlbCBBSSB0ZWxlbWV0cnkuXG4gICAqL1xuICAgX3BhdGNoKG1vZHVsZUV4cG9ydHMpIHtcbiAgICB0aGlzLl9pc1BhdGNoZWQgPSB0cnVlO1xuXG4gICAgdGhpcy5fY2FsbGJhY2tzLmZvckVhY2goY2FsbGJhY2sgPT4gY2FsbGJhY2soKSk7XG4gICAgdGhpcy5fY2FsbGJhY2tzID0gW107XG5cbiAgICBjb25zdCBnZW5lcmF0ZVBhdGNoID0gKG9yaWdpbmFsTWV0aG9kKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb3h5KG9yaWdpbmFsTWV0aG9kLCB7XG4gICAgICAgIGFwcGx5OiAodGFyZ2V0LCB0aGlzQXJnLCBhcmdzKSA9PiB7XG4gICAgICAgICAgY29uc3QgZXhpc3RpbmdFeHBlcmltZW50YWxUZWxlbWV0cnkgPSBhcmdzWzBdLmV4cGVyaW1lbnRhbF90ZWxlbWV0cnkgfHwge307XG4gICAgICAgICAgY29uc3QgaXNFbmFibGVkID0gZXhpc3RpbmdFeHBlcmltZW50YWxUZWxlbWV0cnkuaXNFbmFibGVkO1xuXG4gICAgICAgICAgY29uc3QgY2xpZW50ID0gY29yZS5nZXRDbGllbnQoKTtcbiAgICAgICAgICBjb25zdCBpbnRlZ3JhdGlvbiA9IGNsaWVudD8uZ2V0SW50ZWdyYXRpb25CeU5hbWUoY29uc3RhbnRzLklOVEVHUkFUSU9OX05BTUUpO1xuICAgICAgICAgIGNvbnN0IGludGVncmF0aW9uT3B0aW9ucyA9IGludGVncmF0aW9uPy5vcHRpb25zO1xuICAgICAgICAgIGNvbnN0IHNob3VsZFJlY29yZElucHV0c0FuZE91dHB1dHMgPSBpbnRlZ3JhdGlvbiA/IEJvb2xlYW4oY2xpZW50Py5nZXRPcHRpb25zKCkuc2VuZERlZmF1bHRQaWkpIDogZmFsc2U7XG5cbiAgICAgICAgICBjb25zdCB7IHJlY29yZElucHV0cywgcmVjb3JkT3V0cHV0cyB9ID0gZGV0ZXJtaW5lUmVjb3JkaW5nU2V0dGluZ3MoXG4gICAgICAgICAgICBpbnRlZ3JhdGlvbk9wdGlvbnMsXG4gICAgICAgICAgICBleGlzdGluZ0V4cGVyaW1lbnRhbFRlbGVtZXRyeSxcbiAgICAgICAgICAgIGlzRW5hYmxlZCxcbiAgICAgICAgICAgIHNob3VsZFJlY29yZElucHV0c0FuZE91dHB1dHMsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGFyZ3NbMF0uZXhwZXJpbWVudGFsX3RlbGVtZXRyeSA9IHtcbiAgICAgICAgICAgIC4uLmV4aXN0aW5nRXhwZXJpbWVudGFsVGVsZW1ldHJ5LFxuICAgICAgICAgICAgaXNFbmFibGVkOiBpc0VuYWJsZWQgIT09IHVuZGVmaW5lZCA/IGlzRW5hYmxlZCA6IHRydWUsXG4gICAgICAgICAgICByZWNvcmRJbnB1dHMsXG4gICAgICAgICAgICByZWNvcmRPdXRwdXRzLFxuICAgICAgICAgIH07XG5cbiAgICAgICAgICByZXR1cm4gY29yZS5oYW5kbGVDYWxsYmFja0Vycm9ycyhcbiAgICAgICAgICAgICgpID0+IFJlZmxlY3QuYXBwbHkodGFyZ2V0LCB0aGlzQXJnLCBhcmdzKSxcbiAgICAgICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgLy8gVGhpcyBlcnJvciBidWJibGVzIHVwIHRvIHVuaGFuZGxlZHJlamVjdGlvbiBoYW5kbGVyIChpZiBub3QgaGFuZGxlZCBiZWZvcmUpLFxuICAgICAgICAgICAgICAvLyB3aGVyZSB3ZSBkbyBub3Qga25vdyB0aGUgYWN0aXZlIHNwYW4gYW55bW9yZVxuICAgICAgICAgICAgICAvLyBTbyB0byBjaXJjdW12ZW50IHRoaXMsIHdlIHNldCB0aGUgYWN0aXZlIHNwYW4gb24gdGhlIGVycm9yIG9iamVjdFxuICAgICAgICAgICAgICAvLyB3aGljaCBpcyBwaWNrZWQgdXAgYnkgdGhlIHVuaGFuZGxlZHJlamVjdGlvbiBoYW5kbGVyXG4gICAgICAgICAgICAgIGlmIChlcnJvciAmJiB0eXBlb2YgZXJyb3IgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgY29yZS5hZGROb25FbnVtZXJhYmxlUHJvcGVydHkoZXJyb3IsICdfc2VudHJ5X2FjdGl2ZV9zcGFuJywgY29yZS5nZXRBY3RpdmVTcGFuKCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICByZXN1bHQgPT4ge1xuICAgICAgICAgICAgICBwcm9jZXNzVG9vbENhbGxSZXN1bHRzKHJlc3VsdCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgLy8gSXMgdGhpcyBhbiBFU00gbW9kdWxlP1xuICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtbW9kdWxlLW5hbWVzcGFjZS1vYmplY3RzXG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChtb2R1bGVFeHBvcnRzKSA9PT0gJ1tvYmplY3QgTW9kdWxlXScpIHtcbiAgICAgIC8vIEluIEVTTSB3ZSB0YWtlIHRoZSB1c3VhbCByb3V0ZSBhbmQganVzdCByZXBsYWNlIHRoZSBleHBvcnRzIHdlIHdhbnQgdG8gaW5zdHJ1bWVudFxuICAgICAgZm9yIChjb25zdCBtZXRob2Qgb2YgSU5TVFJVTUVOVEVEX01FVEhPRFMpIHtcbiAgICAgICAgLy8gU2tpcCBtZXRob2RzIHRoYXQgZG9uJ3QgZXhpc3QgaW4gdGhpcyB2ZXJzaW9uIG9mIHRoZSBBSSBTREsgKGUuZy4sIHJlcmFuayB3YXMgYWRkZWQgaW4gdjYpXG4gICAgICAgIGlmIChtb2R1bGVFeHBvcnRzW21ldGhvZF0gIT0gbnVsbCkge1xuICAgICAgICAgIG1vZHVsZUV4cG9ydHNbbWV0aG9kXSA9IGdlbmVyYXRlUGF0Y2gobW9kdWxlRXhwb3J0c1ttZXRob2RdKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbW9kdWxlRXhwb3J0cztcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSW4gQ0pTIHdlIGNhbid0IHJlcGxhY2UgdGhlIGV4cG9ydHMgaW4gdGhlIG9yaWdpbmFsIG1vZHVsZSBiZWNhdXNlIHRoZXlcbiAgICAgIC8vIGRvbid0IGhhdmUgc2V0dGVycywgc28gd2UgY3JlYXRlIGEgbmV3IG9iamVjdCB3aXRoIHRoZSBzYW1lIHByb3BlcnRpZXNcbiAgICAgIGNvbnN0IHBhdGNoZWRNb2R1bGVFeHBvcnRzID0gSU5TVFJVTUVOVEVEX01FVEhPRFMucmVkdWNlKChhY2MsIGN1cnIpID0+IHtcbiAgICAgICAgLy8gU2tpcCBtZXRob2RzIHRoYXQgZG9uJ3QgZXhpc3QgaW4gdGhpcyB2ZXJzaW9uIG9mIHRoZSBBSSBTREsgKGUuZy4sIHJlcmFuayB3YXMgYWRkZWQgaW4gdjYpXG4gICAgICAgIGlmIChtb2R1bGVFeHBvcnRzW2N1cnJdICE9IG51bGwpIHtcbiAgICAgICAgICBhY2NbY3Vycl0gPSBnZW5lcmF0ZVBhdGNoKG1vZHVsZUV4cG9ydHNbY3Vycl0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCB7fSApO1xuXG4gICAgICByZXR1cm4geyAuLi5tb2R1bGVFeHBvcnRzLCAuLi5wYXRjaGVkTW9kdWxlRXhwb3J0cyB9O1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnRzLlNlbnRyeVZlcmNlbEFpSW5zdHJ1bWVudGF0aW9uID0gU2VudHJ5VmVyY2VsQWlJbnN0cnVtZW50YXRpb247XG5leHBvcnRzLmNsZWFudXBUb29sQ2FsbFNwYW5Db250ZXh0cyA9IGNsZWFudXBUb29sQ2FsbFNwYW5Db250ZXh0cztcbmV4cG9ydHMuZGV0ZXJtaW5lUmVjb3JkaW5nU2V0dGluZ3MgPSBkZXRlcm1pbmVSZWNvcmRpbmdTZXR0aW5ncztcbmV4cG9ydHMucHJvY2Vzc1Rvb2xDYWxsUmVzdWx0cyA9IHByb2Nlc3NUb29sQ2FsbFJlc3VsdHM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbnN0cnVtZW50YXRpb24uanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/vercelai/instrumentation.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js":
/*!**************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js ***!
\**************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst http = __webpack_require__(/*! ../integrations/http.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/http.js\");\nconst nodeFetch = __webpack_require__(/*! ../integrations/node-fetch.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/node-fetch.js\");\nconst index = __webpack_require__(/*! ../integrations/tracing/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\");\nconst initOtel = __webpack_require__(/*! ./initOtel.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js\");\n\n/**\n * Get default integrations, excluding performance.\n */\nfunction getDefaultIntegrationsWithoutPerformance() {\n const nodeCoreIntegrations = nodeCore.getDefaultIntegrations();\n\n // Filter out the node-core HTTP and NodeFetch integrations and replace them with Node SDK's composite versions\n return nodeCoreIntegrations\n .filter(integration => integration.name !== 'Http' && integration.name !== 'NodeFetch')\n .concat(http.httpIntegration(), nodeFetch.nativeNodeFetchIntegration());\n}\n\n/** Get the default integrations for the Node SDK. */\nfunction getDefaultIntegrations(options) {\n return [\n ...getDefaultIntegrationsWithoutPerformance(),\n // We only add performance integrations if tracing is enabled\n // Note that this means that without tracing enabled, e.g. `expressIntegration()` will not be added\n // This means that generally request isolation will work (because that is done by httpIntegration)\n // But `transactionName` will not be set automatically\n ...(core.hasSpansEnabled(options) ? index.getAutoPerformanceIntegrations() : []),\n ];\n}\n\n/**\n * Initialize Sentry for Node.\n */\nfunction init(options = {}) {\n return _init(options, getDefaultIntegrations);\n}\n\n/**\n * Internal initialization function.\n */\nfunction _init(\n options = {},\n getDefaultIntegrationsImpl,\n) {\n core.applySdkMetadata(options, 'node');\n\n const client = nodeCore.init({\n ...options,\n // Only use Node SDK defaults if none provided\n defaultIntegrations: options.defaultIntegrations ?? getDefaultIntegrationsImpl(options),\n });\n\n // Add Node SDK specific OpenTelemetry setup\n if (client && !options.skipOpenTelemetrySetup) {\n initOtel.initOpenTelemetry(client, {\n spanProcessors: options.openTelemetrySpanProcessors,\n });\n nodeCore.validateOpenTelemetrySetup();\n }\n\n return client;\n}\n\n/**\n * Initialize Sentry for Node, without any integrations added by default.\n */\nfunction initWithoutDefaultIntegrations(options = {}) {\n return _init(options, () => []);\n}\n\nexports.getDefaultIntegrations = getDefaultIntegrations;\nexports.getDefaultIntegrationsWithoutPerformance = getDefaultIntegrationsWithoutPerformance;\nexports.init = init;\nexports.initWithoutDefaultIntegrations = initWithoutDefaultIntegrations;\n//# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvc2RrL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLGFBQWEsbUJBQU8sQ0FBQyxrSEFBYztBQUNuQyxpQkFBaUIsbUJBQU8sQ0FBQyxnT0FBbUI7QUFDNUMsYUFBYSxtQkFBTyxDQUFDLHlJQUF5QjtBQUM5QyxrQkFBa0IsbUJBQU8sQ0FBQyxxSkFBK0I7QUFDekQsY0FBYyxtQkFBTyxDQUFDLDJKQUFrQztBQUN4RCxpQkFBaUIsbUJBQU8sQ0FBQywwSEFBZTs7QUFFeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCO0FBQzFCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0Esb0RBQW9EO0FBQ3BEO0FBQ0E7O0FBRUEsOEJBQThCO0FBQzlCLGdEQUFnRDtBQUNoRCxZQUFZO0FBQ1osc0NBQXNDO0FBQ3RDIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL3Nkay9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgY29yZSA9IHJlcXVpcmUoJ0BzZW50cnkvY29yZScpO1xuY29uc3Qgbm9kZUNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L25vZGUtY29yZScpO1xuY29uc3QgaHR0cCA9IHJlcXVpcmUoJy4uL2ludGVncmF0aW9ucy9odHRwLmpzJyk7XG5jb25zdCBub2RlRmV0Y2ggPSByZXF1aXJlKCcuLi9pbnRlZ3JhdGlvbnMvbm9kZS1mZXRjaC5qcycpO1xuY29uc3QgaW5kZXggPSByZXF1aXJlKCcuLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9pbmRleC5qcycpO1xuY29uc3QgaW5pdE90ZWwgPSByZXF1aXJlKCcuL2luaXRPdGVsLmpzJyk7XG5cbi8qKlxuICogR2V0IGRlZmF1bHQgaW50ZWdyYXRpb25zLCBleGNsdWRpbmcgcGVyZm9ybWFuY2UuXG4gKi9cbmZ1bmN0aW9uIGdldERlZmF1bHRJbnRlZ3JhdGlvbnNXaXRob3V0UGVyZm9ybWFuY2UoKSB7XG4gIGNvbnN0IG5vZGVDb3JlSW50ZWdyYXRpb25zID0gbm9kZUNvcmUuZ2V0RGVmYXVsdEludGVncmF0aW9ucygpO1xuXG4gIC8vIEZpbHRlciBvdXQgdGhlIG5vZGUtY29yZSBIVFRQIGFuZCBOb2RlRmV0Y2ggaW50ZWdyYXRpb25zIGFuZCByZXBsYWNlIHRoZW0gd2l0aCBOb2RlIFNESydzIGNvbXBvc2l0ZSB2ZXJzaW9uc1xuICByZXR1cm4gbm9kZUNvcmVJbnRlZ3JhdGlvbnNcbiAgICAuZmlsdGVyKGludGVncmF0aW9uID0+IGludGVncmF0aW9uLm5hbWUgIT09ICdIdHRwJyAmJiBpbnRlZ3JhdGlvbi5uYW1lICE9PSAnTm9kZUZldGNoJylcbiAgICAuY29uY2F0KGh0dHAuaHR0cEludGVncmF0aW9uKCksIG5vZGVGZXRjaC5uYXRpdmVOb2RlRmV0Y2hJbnRlZ3JhdGlvbigpKTtcbn1cblxuLyoqIEdldCB0aGUgZGVmYXVsdCBpbnRlZ3JhdGlvbnMgZm9yIHRoZSBOb2RlIFNESy4gKi9cbmZ1bmN0aW9uIGdldERlZmF1bHRJbnRlZ3JhdGlvbnMob3B0aW9ucykge1xuICByZXR1cm4gW1xuICAgIC4uLmdldERlZmF1bHRJbnRlZ3JhdGlvbnNXaXRob3V0UGVyZm9ybWFuY2UoKSxcbiAgICAvLyBXZSBvbmx5IGFkZCBwZXJmb3JtYW5jZSBpbnRlZ3JhdGlvbnMgaWYgdHJhY2luZyBpcyBlbmFibGVkXG4gICAgLy8gTm90ZSB0aGF0IHRoaXMgbWVhbnMgdGhhdCB3aXRob3V0IHRyYWNpbmcgZW5hYmxlZCwgZS5nLiBgZXhwcmVzc0ludGVncmF0aW9uKClgIHdpbGwgbm90IGJlIGFkZGVkXG4gICAgLy8gVGhpcyBtZWFucyB0aGF0IGdlbmVyYWxseSByZXF1ZXN0IGlzb2xhdGlvbiB3aWxsIHdvcmsgKGJlY2F1c2UgdGhhdCBpcyBkb25lIGJ5IGh0dHBJbnRlZ3JhdGlvbilcbiAgICAvLyBCdXQgYHRyYW5zYWN0aW9uTmFtZWAgd2lsbCBub3QgYmUgc2V0IGF1dG9tYXRpY2FsbHlcbiAgICAuLi4oY29yZS5oYXNTcGFuc0VuYWJsZWQob3B0aW9ucykgPyBpbmRleC5nZXRBdXRvUGVyZm9ybWFuY2VJbnRlZ3JhdGlvbnMoKSA6IFtdKSxcbiAgXTtcbn1cblxuLyoqXG4gKiBJbml0aWFsaXplIFNlbnRyeSBmb3IgTm9kZS5cbiAqL1xuZnVuY3Rpb24gaW5pdChvcHRpb25zID0ge30pIHtcbiAgcmV0dXJuIF9pbml0KG9wdGlvbnMsIGdldERlZmF1bHRJbnRlZ3JhdGlvbnMpO1xufVxuXG4vKipcbiAqIEludGVybmFsIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLlxuICovXG5mdW5jdGlvbiBfaW5pdChcbiAgb3B0aW9ucyA9IHt9LFxuICBnZXREZWZhdWx0SW50ZWdyYXRpb25zSW1wbCxcbikge1xuICBjb3JlLmFwcGx5U2RrTWV0YWRhdGEob3B0aW9ucywgJ25vZGUnKTtcblxuICBjb25zdCBjbGllbnQgPSBub2RlQ29yZS5pbml0KHtcbiAgICAuLi5vcHRpb25zLFxuICAgIC8vIE9ubHkgdXNlIE5vZGUgU0RLIGRlZmF1bHRzIGlmIG5vbmUgcHJvdmlkZWRcbiAgICBkZWZhdWx0SW50ZWdyYXRpb25zOiBvcHRpb25zLmRlZmF1bHRJbnRlZ3JhdGlvbnMgPz8gZ2V0RGVmYXVsdEludGVncmF0aW9uc0ltcGwob3B0aW9ucyksXG4gIH0pO1xuXG4gIC8vIEFkZCBOb2RlIFNESyBzcGVjaWZpYyBPcGVuVGVsZW1ldHJ5IHNldHVwXG4gIGlmIChjbGllbnQgJiYgIW9wdGlvbnMuc2tpcE9wZW5UZWxlbWV0cnlTZXR1cCkge1xuICAgIGluaXRPdGVsLmluaXRPcGVuVGVsZW1ldHJ5KGNsaWVudCwge1xuICAgICAgc3BhblByb2Nlc3NvcnM6IG9wdGlvbnMub3BlblRlbGVtZXRyeVNwYW5Qcm9jZXNzb3JzLFxuICAgIH0pO1xuICAgIG5vZGVDb3JlLnZhbGlkYXRlT3BlblRlbGVtZXRyeVNldHVwKCk7XG4gIH1cblxuICByZXR1cm4gY2xpZW50O1xufVxuXG4vKipcbiAqIEluaXRpYWxpemUgU2VudHJ5IGZvciBOb2RlLCB3aXRob3V0IGFueSBpbnRlZ3JhdGlvbnMgYWRkZWQgYnkgZGVmYXVsdC5cbiAqL1xuZnVuY3Rpb24gaW5pdFdpdGhvdXREZWZhdWx0SW50ZWdyYXRpb25zKG9wdGlvbnMgPSB7fSkge1xuICByZXR1cm4gX2luaXQob3B0aW9ucywgKCkgPT4gW10pO1xufVxuXG5leHBvcnRzLmdldERlZmF1bHRJbnRlZ3JhdGlvbnMgPSBnZXREZWZhdWx0SW50ZWdyYXRpb25zO1xuZXhwb3J0cy5nZXREZWZhdWx0SW50ZWdyYXRpb25zV2l0aG91dFBlcmZvcm1hbmNlID0gZ2V0RGVmYXVsdEludGVncmF0aW9uc1dpdGhvdXRQZXJmb3JtYW5jZTtcbmV4cG9ydHMuaW5pdCA9IGluaXQ7XG5leHBvcnRzLmluaXRXaXRob3V0RGVmYXVsdEludGVncmF0aW9ucyA9IGluaXRXaXRob3V0RGVmYXVsdEludGVncmF0aW9ucztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/index.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js":
/*!*****************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js ***!
\*****************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst api = __webpack_require__(/*! @opentelemetry/api */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+api@1.9.1/node_modules/@opentelemetry/api/build/esm/index.js\");\nconst resources = __webpack_require__(/*! @opentelemetry/resources */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+resources@2.6.1_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/resources/build/esm/index.js\");\nconst sdkTraceBase = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+sdk-trace-base@2.6.1_@opentelemetry+api@1.9.1/node_modules/@opentelemetry/sdk-trace-base/build/esm/index.js\");\nconst semanticConventions = __webpack_require__(/*! @opentelemetry/semantic-conventions */ \"(ssr)/./node_modules/.pnpm/@opentelemetry+semantic-conventions@1.40.0/node_modules/@opentelemetry/semantic-conventions/build/esm/index.js\");\nconst core = __webpack_require__(/*! @sentry/core */ \"(ssr)/./node_modules/.pnpm/@sentry+core@10.47.0/node_modules/@sentry/core/build/cjs/index.js\");\nconst nodeCore = __webpack_require__(/*! @sentry/node-core */ \"(ssr)/./node_modules/.pnpm/@sentry+node-core@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hooks@2_6bb9c158a6d788145ea4af24b1f9730a/node_modules/@sentry/node-core/build/cjs/index.js\");\nconst opentelemetry = __webpack_require__(/*! @sentry/opentelemetry */ \"(ssr)/./node_modules/.pnpm/@sentry+opentelemetry@10.47.0_@opentelemetry+api@1.9.1_@opentelemetry+context-async-hoo_70f539428297572a9e3752da9c315982/node_modules/@sentry/opentelemetry/build/cjs/index.js\");\nconst debugBuild = __webpack_require__(/*! ../debug-build.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/debug-build.js\");\nconst index = __webpack_require__(/*! ../integrations/tracing/index.js */ \"(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/integrations/tracing/index.js\");\n\n// About 277h - this must fit into new Array(len)!\nconst MAX_MAX_SPAN_WAIT_DURATION = 1000000;\n\n/**\n * Initialize OpenTelemetry for Node.\n */\nfunction initOpenTelemetry(client, options = {}) {\n if (client.getOptions().debug) {\n nodeCore.setupOpenTelemetryLogger();\n }\n\n const [provider, asyncLocalStorageLookup] = setupOtel(client, options);\n client.traceProvider = provider;\n client.asyncLocalStorageLookup = asyncLocalStorageLookup;\n}\n\n/**\n * Preload OpenTelemetry for Node.\n * This can be used to preload instrumentation early, but set up Sentry later.\n * By preloading the OTEL instrumentation wrapping still happens early enough that everything works.\n */\nfunction preloadOpenTelemetry(options = {}) {\n const { debug } = options;\n\n if (debug) {\n core.debug.enable();\n }\n\n nodeCore.initializeEsmLoader();\n\n // These are all integrations that we need to pre-load to ensure they are set up before any other code runs\n getPreloadMethods(options.integrations).forEach(fn => {\n fn();\n\n if (debug) {\n core.debug.log(`[Sentry] Preloaded ${fn.id} instrumentation`);\n }\n });\n}\n\nfunction getPreloadMethods(integrationNames) {\n const instruments = index.getOpenTelemetryInstrumentationToPreload();\n\n if (!integrationNames) {\n return instruments;\n }\n\n // We match exact matches of instrumentation, but also match prefixes, e.g. \"Fastify.v5\" will match \"Fastify\"\n return instruments.filter(instrumentation => {\n const id = instrumentation.id;\n return integrationNames.some(integrationName => id === integrationName || id.startsWith(`${integrationName}.`));\n });\n}\n\n/** Just exported for tests. */\nfunction setupOtel(\n client,\n options = {},\n) {\n // Create and configure NodeTracerProvider\n const provider = new sdkTraceBase.BasicTracerProvider({\n sampler: new opentelemetry.SentrySampler(client),\n resource: resources.defaultResource().merge(\n resources.resourceFromAttributes({\n [semanticConventions.ATTR_SERVICE_NAME]: 'node',\n // eslint-disable-next-line deprecation/deprecation\n [semanticConventions.SEMRESATTRS_SERVICE_NAMESPACE]: 'sentry',\n [semanticConventions.ATTR_SERVICE_VERSION]: core.SDK_VERSION,\n }),\n ),\n forceFlushTimeoutMillis: 500,\n spanProcessors: [\n new opentelemetry.SentrySpanProcessor({\n timeout: _clampSpanProcessorTimeout(client.getOptions().maxSpanWaitDuration),\n }),\n ...(options.spanProcessors || []),\n ],\n });\n\n // Register as globals\n api.trace.setGlobalTracerProvider(provider);\n api.propagation.setGlobalPropagator(new opentelemetry.SentryPropagator());\n\n const ctxManager = new nodeCore.SentryContextManager();\n api.context.setGlobalContextManager(ctxManager);\n\n return [provider, ctxManager.getAsyncLocalStorageLookup()];\n}\n\n/** Just exported for tests. */\nfunction _clampSpanProcessorTimeout(maxSpanWaitDuration) {\n if (maxSpanWaitDuration == null) {\n return undefined;\n }\n\n // We guard for a max. value here, because we create an array with this length\n // So if this value is too large, this would fail\n if (maxSpanWaitDuration > MAX_MAX_SPAN_WAIT_DURATION) {\n debugBuild.DEBUG_BUILD &&\n core.debug.warn(`\\`maxSpanWaitDuration\\` is too high, using the maximum value of ${MAX_MAX_SPAN_WAIT_DURATION}`);\n return MAX_MAX_SPAN_WAIT_DURATION;\n } else if (maxSpanWaitDuration <= 0 || Number.isNaN(maxSpanWaitDuration)) {\n debugBuild.DEBUG_BUILD && core.debug.warn('`maxSpanWaitDuration` must be a positive number, using default value instead.');\n return undefined;\n }\n\n return maxSpanWaitDuration;\n}\n\nexports._clampSpanProcessorTimeout = _clampSpanProcessorTimeout;\nexports.initOpenTelemetry = initOpenTelemetry;\nexports.preloadOpenTelemetry = preloadOpenTelemetry;\nexports.setupOtel = setupOtel;\n//# sourceMappingURL=initOtel.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvc2RrL2luaXRPdGVsLmpzIiwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRCxpQkFBaUI7O0FBRXRFLFlBQVksbUJBQU8sQ0FBQyxrSUFBb0I7QUFDeEMsa0JBQWtCLG1CQUFPLENBQUMsNktBQTBCO0FBQ3BELHFCQUFxQixtQkFBTyxDQUFDLDRMQUErQjtBQUM1RCw0QkFBNEIsbUJBQU8sQ0FBQyxzTEFBcUM7QUFDekUsYUFBYSxtQkFBTyxDQUFDLGtIQUFjO0FBQ25DLGlCQUFpQixtQkFBTyxDQUFDLGdPQUFtQjtBQUM1QyxzQkFBc0IsbUJBQU8sQ0FBQyx3T0FBdUI7QUFDckQsbUJBQW1CLG1CQUFPLENBQUMsNkhBQW1CO0FBQzlDLGNBQWMsbUJBQU8sQ0FBQywySkFBa0M7O0FBRXhEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsK0NBQStDO0FBQy9DO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDO0FBQzFDLFVBQVUsUUFBUTs7QUFFbEI7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDJDQUEyQyxPQUFPO0FBQ2xEO0FBQ0EsR0FBRztBQUNIOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLCtGQUErRixnQkFBZ0I7QUFDL0csR0FBRztBQUNIOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlGQUF5RiwyQkFBMkI7QUFDcEg7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsa0NBQWtDO0FBQ2xDLHlCQUF5QjtBQUN6Qiw0QkFBNEI7QUFDNUIsaUJBQWlCO0FBQ2pCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL3Nkay9pbml0T3RlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblxuY29uc3QgYXBpID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvYXBpJyk7XG5jb25zdCByZXNvdXJjZXMgPSByZXF1aXJlKCdAb3BlbnRlbGVtZXRyeS9yZXNvdXJjZXMnKTtcbmNvbnN0IHNka1RyYWNlQmFzZSA9IHJlcXVpcmUoJ0BvcGVudGVsZW1ldHJ5L3Nkay10cmFjZS1iYXNlJyk7XG5jb25zdCBzZW1hbnRpY0NvbnZlbnRpb25zID0gcmVxdWlyZSgnQG9wZW50ZWxlbWV0cnkvc2VtYW50aWMtY29udmVudGlvbnMnKTtcbmNvbnN0IGNvcmUgPSByZXF1aXJlKCdAc2VudHJ5L2NvcmUnKTtcbmNvbnN0IG5vZGVDb3JlID0gcmVxdWlyZSgnQHNlbnRyeS9ub2RlLWNvcmUnKTtcbmNvbnN0IG9wZW50ZWxlbWV0cnkgPSByZXF1aXJlKCdAc2VudHJ5L29wZW50ZWxlbWV0cnknKTtcbmNvbnN0IGRlYnVnQnVpbGQgPSByZXF1aXJlKCcuLi9kZWJ1Zy1idWlsZC5qcycpO1xuY29uc3QgaW5kZXggPSByZXF1aXJlKCcuLi9pbnRlZ3JhdGlvbnMvdHJhY2luZy9pbmRleC5qcycpO1xuXG4vLyBBYm91dCAyNzdoIC0gdGhpcyBtdXN0IGZpdCBpbnRvIG5ldyBBcnJheShsZW4pIVxuY29uc3QgTUFYX01BWF9TUEFOX1dBSVRfRFVSQVRJT04gPSAxMDAwMDAwO1xuXG4vKipcbiAqIEluaXRpYWxpemUgT3BlblRlbGVtZXRyeSBmb3IgTm9kZS5cbiAqL1xuZnVuY3Rpb24gaW5pdE9wZW5UZWxlbWV0cnkoY2xpZW50LCBvcHRpb25zID0ge30pIHtcbiAgaWYgKGNsaWVudC5nZXRPcHRpb25zKCkuZGVidWcpIHtcbiAgICBub2RlQ29yZS5zZXR1cE9wZW5UZWxlbWV0cnlMb2dnZXIoKTtcbiAgfVxuXG4gIGNvbnN0IFtwcm92aWRlciwgYXN5bmNMb2NhbFN0b3JhZ2VMb29rdXBdID0gc2V0dXBPdGVsKGNsaWVudCwgb3B0aW9ucyk7XG4gIGNsaWVudC50cmFjZVByb3ZpZGVyID0gcHJvdmlkZXI7XG4gIGNsaWVudC5hc3luY0xvY2FsU3RvcmFnZUxvb2t1cCA9IGFzeW5jTG9jYWxTdG9yYWdlTG9va3VwO1xufVxuXG4vKipcbiAqIFByZWxvYWQgT3BlblRlbGVtZXRyeSBmb3IgTm9kZS5cbiAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gcHJlbG9hZCBpbnN0cnVtZW50YXRpb24gZWFybHksIGJ1dCBzZXQgdXAgU2VudHJ5IGxhdGVyLlxuICogQnkgcHJlbG9hZGluZyB0aGUgT1RFTCBpbnN0cnVtZW50YXRpb24gd3JhcHBpbmcgc3RpbGwgaGFwcGVucyBlYXJseSBlbm91Z2ggdGhhdCBldmVyeXRoaW5nIHdvcmtzLlxuICovXG5mdW5jdGlvbiBwcmVsb2FkT3BlblRlbGVtZXRyeShvcHRpb25zID0ge30pIHtcbiAgY29uc3QgeyBkZWJ1ZyB9ID0gb3B0aW9ucztcblxuICBpZiAoZGVidWcpIHtcbiAgICBjb3JlLmRlYnVnLmVuYWJsZSgpO1xuICB9XG5cbiAgbm9kZUNvcmUuaW5pdGlhbGl6ZUVzbUxvYWRlcigpO1xuXG4gIC8vIFRoZXNlIGFyZSBhbGwgaW50ZWdyYXRpb25zIHRoYXQgd2UgbmVlZCB0byBwcmUtbG9hZCB0byBlbnN1cmUgdGhleSBhcmUgc2V0IHVwIGJlZm9yZSBhbnkgb3RoZXIgY29kZSBydW5zXG4gIGdldFByZWxvYWRNZXRob2RzKG9wdGlvbnMuaW50ZWdyYXRpb25zKS5mb3JFYWNoKGZuID0+IHtcbiAgICBmbigpO1xuXG4gICAgaWYgKGRlYnVnKSB7XG4gICAgICBjb3JlLmRlYnVnLmxvZyhgW1NlbnRyeV0gUHJlbG9hZGVkICR7Zm4uaWR9IGluc3RydW1lbnRhdGlvbmApO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldFByZWxvYWRNZXRob2RzKGludGVncmF0aW9uTmFtZXMpIHtcbiAgY29uc3QgaW5zdHJ1bWVudHMgPSBpbmRleC5nZXRPcGVuVGVsZW1ldHJ5SW5zdHJ1bWVudGF0aW9uVG9QcmVsb2FkKCk7XG5cbiAgaWYgKCFpbnRlZ3JhdGlvbk5hbWVzKSB7XG4gICAgcmV0dXJuIGluc3RydW1lbnRzO1xuICB9XG5cbiAgLy8gV2UgbWF0Y2ggZXhhY3QgbWF0Y2hlcyBvZiBpbnN0cnVtZW50YXRpb24sIGJ1dCBhbHNvIG1hdGNoIHByZWZpeGVzLCBlLmcuIFwiRmFzdGlmeS52NVwiIHdpbGwgbWF0Y2ggXCJGYXN0aWZ5XCJcbiAgcmV0dXJuIGluc3RydW1lbnRzLmZpbHRlcihpbnN0cnVtZW50YXRpb24gPT4ge1xuICAgIGNvbnN0IGlkID0gaW5zdHJ1bWVudGF0aW9uLmlkO1xuICAgIHJldHVybiBpbnRlZ3JhdGlvbk5hbWVzLnNvbWUoaW50ZWdyYXRpb25OYW1lID0+IGlkID09PSBpbnRlZ3JhdGlvbk5hbWUgfHwgaWQuc3RhcnRzV2l0aChgJHtpbnRlZ3JhdGlvbk5hbWV9LmApKTtcbiAgfSk7XG59XG5cbi8qKiBKdXN0IGV4cG9ydGVkIGZvciB0ZXN0cy4gKi9cbmZ1bmN0aW9uIHNldHVwT3RlbChcbiAgY2xpZW50LFxuICBvcHRpb25zID0ge30sXG4pIHtcbiAgLy8gQ3JlYXRlIGFuZCBjb25maWd1cmUgTm9kZVRyYWNlclByb3ZpZGVyXG4gIGNvbnN0IHByb3ZpZGVyID0gbmV3IHNka1RyYWNlQmFzZS5CYXNpY1RyYWNlclByb3ZpZGVyKHtcbiAgICBzYW1wbGVyOiBuZXcgb3BlbnRlbGVtZXRyeS5TZW50cnlTYW1wbGVyKGNsaWVudCksXG4gICAgcmVzb3VyY2U6IHJlc291cmNlcy5kZWZhdWx0UmVzb3VyY2UoKS5tZXJnZShcbiAgICAgIHJlc291cmNlcy5yZXNvdXJjZUZyb21BdHRyaWJ1dGVzKHtcbiAgICAgICAgW3NlbWFudGljQ29udmVudGlvbnMuQVRUUl9TRVJWSUNFX05BTUVdOiAnbm9kZScsXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkZXByZWNhdGlvbi9kZXByZWNhdGlvblxuICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5TRU1SRVNBVFRSU19TRVJWSUNFX05BTUVTUEFDRV06ICdzZW50cnknLFxuICAgICAgICBbc2VtYW50aWNDb252ZW50aW9ucy5BVFRSX1NFUlZJQ0VfVkVSU0lPTl06IGNvcmUuU0RLX1ZFUlNJT04sXG4gICAgICB9KSxcbiAgICApLFxuICAgIGZvcmNlRmx1c2hUaW1lb3V0TWlsbGlzOiA1MDAsXG4gICAgc3BhblByb2Nlc3NvcnM6IFtcbiAgICAgIG5ldyBvcGVudGVsZW1ldHJ5LlNlbnRyeVNwYW5Qcm9jZXNzb3Ioe1xuICAgICAgICB0aW1lb3V0OiBfY2xhbXBTcGFuUHJvY2Vzc29yVGltZW91dChjbGllbnQuZ2V0T3B0aW9ucygpLm1heFNwYW5XYWl0RHVyYXRpb24pLFxuICAgICAgfSksXG4gICAgICAuLi4ob3B0aW9ucy5zcGFuUHJvY2Vzc29ycyB8fCBbXSksXG4gICAgXSxcbiAgfSk7XG5cbiAgLy8gUmVnaXN0ZXIgYXMgZ2xvYmFsc1xuICBhcGkudHJhY2Uuc2V0R2xvYmFsVHJhY2VyUHJvdmlkZXIocHJvdmlkZXIpO1xuICBhcGkucHJvcGFnYXRpb24uc2V0R2xvYmFsUHJvcGFnYXRvcihuZXcgb3BlbnRlbGVtZXRyeS5TZW50cnlQcm9wYWdhdG9yKCkpO1xuXG4gIGNvbnN0IGN0eE1hbmFnZXIgPSBuZXcgbm9kZUNvcmUuU2VudHJ5Q29udGV4dE1hbmFnZXIoKTtcbiAgYXBpLmNvbnRleHQuc2V0R2xvYmFsQ29udGV4dE1hbmFnZXIoY3R4TWFuYWdlcik7XG5cbiAgcmV0dXJuIFtwcm92aWRlciwgY3R4TWFuYWdlci5nZXRBc3luY0xvY2FsU3RvcmFnZUxvb2t1cCgpXTtcbn1cblxuLyoqIEp1c3QgZXhwb3J0ZWQgZm9yIHRlc3RzLiAqL1xuZnVuY3Rpb24gX2NsYW1wU3BhblByb2Nlc3NvclRpbWVvdXQobWF4U3BhbldhaXREdXJhdGlvbikge1xuICBpZiAobWF4U3BhbldhaXREdXJhdGlvbiA9PSBudWxsKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8vIFdlIGd1YXJkIGZvciBhIG1heC4gdmFsdWUgaGVyZSwgYmVjYXVzZSB3ZSBjcmVhdGUgYW4gYXJyYXkgd2l0aCB0aGlzIGxlbmd0aFxuICAvLyBTbyBpZiB0aGlzIHZhbHVlIGlzIHRvbyBsYXJnZSwgdGhpcyB3b3VsZCBmYWlsXG4gIGlmIChtYXhTcGFuV2FpdER1cmF0aW9uID4gTUFYX01BWF9TUEFOX1dBSVRfRFVSQVRJT04pIHtcbiAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmXG4gICAgICBjb3JlLmRlYnVnLndhcm4oYFxcYG1heFNwYW5XYWl0RHVyYXRpb25cXGAgaXMgdG9vIGhpZ2gsIHVzaW5nIHRoZSBtYXhpbXVtIHZhbHVlIG9mICR7TUFYX01BWF9TUEFOX1dBSVRfRFVSQVRJT059YCk7XG4gICAgcmV0dXJuIE1BWF9NQVhfU1BBTl9XQUlUX0RVUkFUSU9OO1xuICB9IGVsc2UgaWYgKG1heFNwYW5XYWl0RHVyYXRpb24gPD0gMCB8fCBOdW1iZXIuaXNOYU4obWF4U3BhbldhaXREdXJhdGlvbikpIHtcbiAgICBkZWJ1Z0J1aWxkLkRFQlVHX0JVSUxEICYmIGNvcmUuZGVidWcud2FybignYG1heFNwYW5XYWl0RHVyYXRpb25gIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXIsIHVzaW5nIGRlZmF1bHQgdmFsdWUgaW5zdGVhZC4nKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIG1heFNwYW5XYWl0RHVyYXRpb247XG59XG5cbmV4cG9ydHMuX2NsYW1wU3BhblByb2Nlc3NvclRpbWVvdXQgPSBfY2xhbXBTcGFuUHJvY2Vzc29yVGltZW91dDtcbmV4cG9ydHMuaW5pdE9wZW5UZWxlbWV0cnkgPSBpbml0T3BlblRlbGVtZXRyeTtcbmV4cG9ydHMucHJlbG9hZE9wZW5UZWxlbWV0cnkgPSBwcmVsb2FkT3BlblRlbGVtZXRyeTtcbmV4cG9ydHMuc2V0dXBPdGVsID0gc2V0dXBPdGVsO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5pdE90ZWwuanMubWFwXG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbMF0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/sdk/initOtel.js\n");
/***/ }),
/***/ "(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js":
/*!*********************************************************************************************************!*\
!*** ./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js ***!
\*********************************************************************************************************/
/***/ ((__unused_webpack_module, exports) => {
eval("Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\nconst SINGLE_ARG_COMMANDS = ['get', 'set', 'setex'];\n\nconst GET_COMMANDS = ['get', 'mget'];\nconst SET_COMMANDS = ['set', 'setex'];\n// todo: del, expire\n\n/** Checks if a given command is in the list of redis commands.\n * Useful because commands can come in lowercase or uppercase (depending on the library). */\nfunction isInCommands(redisCommands, command) {\n return redisCommands.includes(command.toLowerCase());\n}\n\n/** Determine cache operation based on redis statement */\nfunction getCacheOperation(\n command,\n) {\n if (isInCommands(GET_COMMANDS, command)) {\n return 'cache.get';\n } else if (isInCommands(SET_COMMANDS, command)) {\n return 'cache.put';\n } else {\n return undefined;\n }\n}\n\nfunction keyHasPrefix(key, prefixes) {\n return prefixes.some(prefix => key.startsWith(prefix));\n}\n\n/** Safely converts a redis key to a string (comma-separated if there are multiple keys) */\nfunction getCacheKeySafely(redisCommand, cmdArgs) {\n try {\n if (cmdArgs.length === 0) {\n return undefined;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const processArg = (arg) => {\n if (typeof arg === 'string' || typeof arg === 'number' || Buffer.isBuffer(arg)) {\n return [arg.toString()];\n } else if (Array.isArray(arg)) {\n return flatten(arg.map(arg => processArg(arg)));\n } else {\n return ['<unknown>'];\n }\n };\n\n const firstArg = cmdArgs[0];\n if (isInCommands(SINGLE_ARG_COMMANDS, redisCommand) && firstArg != null) {\n return processArg(firstArg);\n }\n\n return flatten(cmdArgs.map(arg => processArg(arg)));\n } catch {\n return undefined;\n }\n}\n\n/** Determines whether a redis operation should be considered as \"cache operation\" by checking if a key is prefixed.\n * We only support certain commands (such as 'set', 'get', 'mget'). */\nfunction shouldConsiderForCache(redisCommand, keys, prefixes) {\n if (!getCacheOperation(redisCommand)) {\n return false;\n }\n\n for (const key of keys) {\n if (keyHasPrefix(key, prefixes)) {\n return true;\n }\n }\n return false;\n}\n\n/** Calculates size based on the cache response value */\nfunction calculateCacheItemSize(response) {\n const getSize = (value) => {\n try {\n if (Buffer.isBuffer(value)) return value.byteLength;\n else if (typeof value === 'string') return value.length;\n else if (typeof value === 'number') return value.toString().length;\n else if (value === null || value === undefined) return 0;\n return JSON.stringify(value).length;\n } catch {\n return undefined;\n }\n };\n\n return Array.isArray(response)\n ? response.reduce((acc, curr) => {\n const size = getSize(curr);\n return typeof size === 'number' ? (acc !== undefined ? acc + size : size) : acc;\n }, 0)\n : getSize(response);\n}\n\nfunction flatten(input) {\n const result = [];\n\n const flattenHelper = (input) => {\n input.forEach((el) => {\n if (Array.isArray(el)) {\n flattenHelper(el);\n } else {\n result.push(el);\n }\n });\n };\n\n flattenHelper(input);\n return result;\n}\n\nexports.GET_COMMANDS = GET_COMMANDS;\nexports.SET_COMMANDS = SET_COMMANDS;\nexports.calculateCacheItemSize = calculateCacheItemSize;\nexports.getCacheKeySafely = getCacheKeySafely;\nexports.getCacheOperation = getCacheOperation;\nexports.isInCommands = isInCommands;\nexports.shouldConsiderForCache = shouldConsiderForCache;\n//# sourceMappingURL=redisCache.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvLnBucG0vQHNlbnRyeStub2RlQDEwLjQ3LjAvbm9kZV9tb2R1bGVzL0BzZW50cnkvbm9kZS9idWlsZC9janMvdXRpbHMvcmVkaXNDYWNoZS5qcyIsIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQsaUJBQWlCOztBQUV0RTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBO0FBQ0E7O0FBRUEsb0JBQW9CO0FBQ3BCLG9CQUFvQjtBQUNwQiw4QkFBOEI7QUFDOUIseUJBQXlCO0FBQ3pCLHlCQUF5QjtBQUN6QixvQkFBb0I7QUFDcEIsOEJBQThCO0FBQzlCIiwic291cmNlcyI6WyIvVXNlcnMvbWFyY21pbnRlbC9Qcm9qZWN0cy9lLXRpYi5jb20vbm9kZV9tb2R1bGVzLy5wbnBtL0BzZW50cnkrbm9kZUAxMC40Ny4wL25vZGVfbW9kdWxlcy9Ac2VudHJ5L25vZGUvYnVpbGQvY2pzL3V0aWxzL3JlZGlzQ2FjaGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cbmNvbnN0IFNJTkdMRV9BUkdfQ09NTUFORFMgPSBbJ2dldCcsICdzZXQnLCAnc2V0ZXgnXTtcblxuY29uc3QgR0VUX0NPTU1BTkRTID0gWydnZXQnLCAnbWdldCddO1xuY29uc3QgU0VUX0NPTU1BTkRTID0gWydzZXQnLCAnc2V0ZXgnXTtcbi8vIHRvZG86IGRlbCwgZXhwaXJlXG5cbi8qKiBDaGVja3MgaWYgYSBnaXZlbiBjb21tYW5kIGlzIGluIHRoZSBsaXN0IG9mIHJlZGlzIGNvbW1hbmRzLlxuICogIFVzZWZ1bCBiZWNhdXNlIGNvbW1hbmRzIGNhbiBjb21lIGluIGxvd2VyY2FzZSBvciB1cHBlcmNhc2UgKGRlcGVuZGluZyBvbiB0aGUgbGlicmFyeSkuICovXG5mdW5jdGlvbiBpc0luQ29tbWFuZHMocmVkaXNDb21tYW5kcywgY29tbWFuZCkge1xuICByZXR1cm4gcmVkaXNDb21tYW5kcy5pbmNsdWRlcyhjb21tYW5kLnRvTG93ZXJDYXNlKCkpO1xufVxuXG4vKiogRGV0ZXJtaW5lIGNhY2hlIG9wZXJhdGlvbiBiYXNlZCBvbiByZWRpcyBzdGF0ZW1lbnQgKi9cbmZ1bmN0aW9uIGdldENhY2hlT3BlcmF0aW9uKFxuICBjb21tYW5kLFxuKSB7XG4gIGlmIChpc0luQ29tbWFuZHMoR0VUX0NPTU1BTkRTLCBjb21tYW5kKSkge1xuICAgIHJldHVybiAnY2FjaGUuZ2V0JztcbiAgfSBlbHNlIGlmIChpc0luQ29tbWFuZHMoU0VUX0NPTU1BTkRTLCBjb21tYW5kKSkge1xuICAgIHJldHVybiAnY2FjaGUucHV0JztcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmZ1bmN0aW9uIGtleUhhc1ByZWZpeChrZXksIHByZWZpeGVzKSB7XG4gIHJldHVybiBwcmVmaXhlcy5zb21lKHByZWZpeCA9PiBrZXkuc3RhcnRzV2l0aChwcmVmaXgpKTtcbn1cblxuLyoqIFNhZmVseSBjb252ZXJ0cyBhIHJlZGlzIGtleSB0byBhIHN0cmluZyAoY29tbWEtc2VwYXJhdGVkIGlmIHRoZXJlIGFyZSBtdWx0aXBsZSBrZXlzKSAqL1xuZnVuY3Rpb24gZ2V0Q2FjaGVLZXlTYWZlbHkocmVkaXNDb21tYW5kLCBjbWRBcmdzKSB7XG4gIHRyeSB7XG4gICAgaWYgKGNtZEFyZ3MubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgY29uc3QgcHJvY2Vzc0FyZyA9IChhcmcpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgYXJnID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgYXJnID09PSAnbnVtYmVyJyB8fCBCdWZmZXIuaXNCdWZmZXIoYXJnKSkge1xuICAgICAgICByZXR1cm4gW2FyZy50b1N0cmluZygpXTtcbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShhcmcpKSB7XG4gICAgICAgIHJldHVybiBmbGF0dGVuKGFyZy5tYXAoYXJnID0+IHByb2Nlc3NBcmcoYXJnKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFsnPHVua25vd24+J107XG4gICAgICB9XG4gICAgfTtcblxuICAgIGNvbnN0IGZpcnN0QXJnID0gY21kQXJnc1swXTtcbiAgICBpZiAoaXNJbkNvbW1hbmRzKFNJTkdMRV9BUkdfQ09NTUFORFMsIHJlZGlzQ29tbWFuZCkgJiYgZmlyc3RBcmcgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHByb2Nlc3NBcmcoZmlyc3RBcmcpO1xuICAgIH1cblxuICAgIHJldHVybiBmbGF0dGVuKGNtZEFyZ3MubWFwKGFyZyA9PiBwcm9jZXNzQXJnKGFyZykpKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKiogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgcmVkaXMgb3BlcmF0aW9uIHNob3VsZCBiZSBjb25zaWRlcmVkIGFzIFwiY2FjaGUgb3BlcmF0aW9uXCIgYnkgY2hlY2tpbmcgaWYgYSBrZXkgaXMgcHJlZml4ZWQuXG4gKiAgV2Ugb25seSBzdXBwb3J0IGNlcnRhaW4gY29tbWFuZHMgKHN1Y2ggYXMgJ3NldCcsICdnZXQnLCAnbWdldCcpLiAqL1xuZnVuY3Rpb24gc2hvdWxkQ29uc2lkZXJGb3JDYWNoZShyZWRpc0NvbW1hbmQsIGtleXMsIHByZWZpeGVzKSB7XG4gIGlmICghZ2V0Q2FjaGVPcGVyYXRpb24ocmVkaXNDb21tYW5kKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICBpZiAoa2V5SGFzUHJlZml4KGtleSwgcHJlZml4ZXMpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKiogQ2FsY3VsYXRlcyBzaXplIGJhc2VkIG9uIHRoZSBjYWNoZSByZXNwb25zZSB2YWx1ZSAqL1xuZnVuY3Rpb24gY2FsY3VsYXRlQ2FjaGVJdGVtU2l6ZShyZXNwb25zZSkge1xuICBjb25zdCBnZXRTaXplID0gKHZhbHVlKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGlmIChCdWZmZXIuaXNCdWZmZXIodmFsdWUpKSByZXR1cm4gdmFsdWUuYnl0ZUxlbmd0aDtcbiAgICAgIGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gICAgICBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSByZXR1cm4gdmFsdWUudG9TdHJpbmcoKS5sZW5ndGg7XG4gICAgICBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gMDtcbiAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSkubGVuZ3RoO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkocmVzcG9uc2UpXG4gICAgPyByZXNwb25zZS5yZWR1Y2UoKGFjYywgY3VycikgPT4ge1xuICAgICAgICBjb25zdCBzaXplID0gZ2V0U2l6ZShjdXJyKTtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBzaXplID09PSAnbnVtYmVyJyA/IChhY2MgIT09IHVuZGVmaW5lZCA/IGFjYyArIHNpemUgOiBzaXplKSA6IGFjYztcbiAgICAgIH0sIDApXG4gICAgOiBnZXRTaXplKHJlc3BvbnNlKTtcbn1cblxuZnVuY3Rpb24gZmxhdHRlbihpbnB1dCkge1xuICBjb25zdCByZXN1bHQgPSBbXTtcblxuICBjb25zdCBmbGF0dGVuSGVscGVyID0gKGlucHV0KSA9PiB7XG4gICAgaW5wdXQuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGVsKSkge1xuICAgICAgICBmbGF0dGVuSGVscGVyKGVsKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKGVsKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBmbGF0dGVuSGVscGVyKGlucHV0KTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZXhwb3J0cy5HRVRfQ09NTUFORFMgPSBHRVRfQ09NTUFORFM7XG5leHBvcnRzLlNFVF9DT01NQU5EUyA9IFNFVF9DT01NQU5EUztcbmV4cG9ydHMuY2FsY3VsYXRlQ2FjaGVJdGVtU2l6ZSA9IGNhbGN1bGF0ZUNhY2hlSXRlbVNpemU7XG5leHBvcnRzLmdldENhY2hlS2V5U2FmZWx5ID0gZ2V0Q2FjaGVLZXlTYWZlbHk7XG5leHBvcnRzLmdldENhY2hlT3BlcmF0aW9uID0gZ2V0Q2FjaGVPcGVyYXRpb247XG5leHBvcnRzLmlzSW5Db21tYW5kcyA9IGlzSW5Db21tYW5kcztcbmV4cG9ydHMuc2hvdWxkQ29uc2lkZXJGb3JDYWNoZSA9IHNob3VsZENvbnNpZGVyRm9yQ2FjaGU7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1yZWRpc0NhY2hlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/.pnpm/@sentry+node@10.47.0/node_modules/@sentry/node/build/cjs/utils/redisCache.js\n");
/***/ })
};
;