start-slicemachine 0.12.57-beta.8 → 0.12.57-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/dist/StartSliceMachineProcess.cjs.map +1 -1
  2. package/dist/StartSliceMachineProcess.js.map +1 -1
  3. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/api.cjs.map +1 -1
  4. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/api.js.map +1 -1
  5. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/baseclient.cjs.map +1 -1
  6. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/baseclient.js.map +1 -1
  7. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/eventProcessors.cjs.map +1 -1
  8. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/eventProcessors.js.map +1 -1
  9. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/hub.cjs.map +1 -1
  10. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/hub.js.map +1 -1
  11. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integration.cjs.map +1 -1
  12. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integration.js.map +1 -1
  13. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integrations/functiontostring.cjs.map +1 -1
  14. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integrations/functiontostring.js.map +1 -1
  15. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integrations/inboundfilters.cjs.map +1 -1
  16. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integrations/inboundfilters.js.map +1 -1
  17. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integrations/requestdata.cjs.map +1 -1
  18. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/integrations/requestdata.js.map +1 -1
  19. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/metrics/instance.cjs.map +1 -1
  20. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/metrics/instance.js.map +1 -1
  21. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/metrics/metric-summary.cjs.map +1 -1
  22. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/metrics/metric-summary.js.map +1 -1
  23. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/metrics/utils.cjs.map +1 -1
  24. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/metrics/utils.js.map +1 -1
  25. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/session.cjs.map +1 -1
  26. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/session.js.map +1 -1
  27. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/dynamicSamplingContext.cjs.map +1 -1
  28. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/dynamicSamplingContext.js.map +1 -1
  29. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/errors.cjs.map +1 -1
  30. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/errors.js.map +1 -1
  31. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/hubextensions.cjs.map +1 -1
  32. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/hubextensions.js.map +1 -1
  33. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/sampling.cjs.map +1 -1
  34. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/sampling.js.map +1 -1
  35. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/span.cjs.map +1 -1
  36. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/span.js.map +1 -1
  37. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/transaction.cjs.map +1 -1
  38. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/tracing/transaction.js.map +1 -1
  39. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/transports/base.cjs.map +1 -1
  40. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/transports/base.js.map +1 -1
  41. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/prepareEvent.cjs.map +1 -1
  42. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/prepareEvent.js.map +1 -1
  43. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/sdkMetadata.cjs.map +1 -1
  44. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/core/esm/utils/sdkMetadata.js.map +1 -1
  45. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/aggregate-errors.cjs.map +1 -1
  46. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/aggregate-errors.js.map +1 -1
  47. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/baggage.cjs.map +1 -1
  48. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/baggage.js.map +1 -1
  49. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/browser.cjs.map +1 -1
  50. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/browser.js.map +1 -1
  51. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/cookie.cjs.map +1 -1
  52. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/cookie.js.map +1 -1
  53. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/dsn.cjs.map +1 -1
  54. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/dsn.js.map +1 -1
  55. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/envelope.cjs.map +1 -1
  56. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/envelope.js.map +1 -1
  57. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/eventbuilder.cjs.map +1 -1
  58. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/eventbuilder.js.map +1 -1
  59. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/instrument/_handlers.cjs.map +1 -1
  60. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/instrument/_handlers.js.map +1 -1
  61. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/is.cjs.map +1 -1
  62. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/is.js.map +1 -1
  63. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/logger.cjs.map +1 -1
  64. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/logger.js.map +1 -1
  65. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/misc.cjs.map +1 -1
  66. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/misc.js.map +1 -1
  67. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/node-stack-trace.cjs.map +1 -1
  68. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/node-stack-trace.js.map +1 -1
  69. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/normalize.cjs.map +1 -1
  70. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/normalize.js.map +1 -1
  71. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/object.cjs.map +1 -1
  72. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/object.js.map +1 -1
  73. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/path.cjs.map +1 -1
  74. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/path.js.map +1 -1
  75. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/ratelimit.cjs.map +1 -1
  76. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/ratelimit.js.map +1 -1
  77. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/requestdata.cjs.map +1 -1
  78. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/requestdata.js.map +1 -1
  79. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/stacktrace.cjs.map +1 -1
  80. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/stacktrace.js.map +1 -1
  81. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/string.cjs.map +1 -1
  82. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/string.js.map +1 -1
  83. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/syncpromise.cjs.map +1 -1
  84. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/syncpromise.js.map +1 -1
  85. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/tracing.cjs.map +1 -1
  86. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/tracing.js.map +1 -1
  87. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/url.cjs.map +1 -1
  88. package/dist/_node_modules/@sentry/node/_node_modules/@sentry/utils/esm/url.js.map +1 -1
  89. package/dist/_node_modules/@sentry/node/esm/integrations/context.cjs.map +1 -1
  90. package/dist/_node_modules/@sentry/node/esm/integrations/context.js.map +1 -1
  91. package/dist/_node_modules/@sentry/node/esm/integrations/contextlines.cjs.map +1 -1
  92. package/dist/_node_modules/@sentry/node/esm/integrations/contextlines.js.map +1 -1
  93. package/dist/_node_modules/@sentry/node/esm/integrations/http.cjs.map +1 -1
  94. package/dist/_node_modules/@sentry/node/esm/integrations/http.js.map +1 -1
  95. package/dist/_node_modules/@sentry/node/esm/integrations/local-variables/common.cjs.map +1 -1
  96. package/dist/_node_modules/@sentry/node/esm/integrations/local-variables/common.js.map +1 -1
  97. package/dist/_node_modules/@sentry/node/esm/integrations/local-variables/local-variables-sync.cjs.map +1 -1
  98. package/dist/_node_modules/@sentry/node/esm/integrations/local-variables/local-variables-sync.js.map +1 -1
  99. package/dist/_node_modules/@sentry/node/esm/integrations/modules.cjs.map +1 -1
  100. package/dist/_node_modules/@sentry/node/esm/integrations/modules.js.map +1 -1
  101. package/dist/_node_modules/@sentry/node/esm/integrations/spotlight.cjs.map +1 -1
  102. package/dist/_node_modules/@sentry/node/esm/integrations/spotlight.js.map +1 -1
  103. package/dist/_node_modules/@sentry/node/esm/integrations/undici/index.cjs.map +1 -1
  104. package/dist/_node_modules/@sentry/node/esm/integrations/undici/index.js.map +1 -1
  105. package/dist/_node_modules/@sentry/node/esm/integrations/utils/http.cjs.map +1 -1
  106. package/dist/_node_modules/@sentry/node/esm/integrations/utils/http.js.map +1 -1
  107. package/dist/_node_modules/@sentry/node/esm/module.cjs.map +1 -1
  108. package/dist/_node_modules/@sentry/node/esm/module.js.map +1 -1
  109. package/dist/_node_modules/@sentry/node/esm/proxy/index.cjs.map +1 -1
  110. package/dist/_node_modules/@sentry/node/esm/proxy/index.js.map +1 -1
  111. package/dist/_node_modules/@sentry/node/esm/proxy/parse-proxy-response.cjs.map +1 -1
  112. package/dist/_node_modules/@sentry/node/esm/proxy/parse-proxy-response.js.map +1 -1
  113. package/dist/_node_modules/@sentry/node/esm/transports/http.cjs.map +1 -1
  114. package/dist/_node_modules/@sentry/node/esm/transports/http.js.map +1 -1
  115. package/dist/_node_modules/data-uri-to-buffer/dist/index.cjs.map +1 -1
  116. package/dist/_node_modules/data-uri-to-buffer/dist/index.js.map +1 -1
  117. package/dist/_node_modules/fetch-blob/file.cjs.map +1 -1
  118. package/dist/_node_modules/fetch-blob/file.js.map +1 -1
  119. package/dist/_node_modules/fetch-blob/index.cjs.map +1 -1
  120. package/dist/_node_modules/fetch-blob/index.js.map +1 -1
  121. package/dist/_node_modules/fetch-blob/streams.cjs.map +1 -1
  122. package/dist/_node_modules/fetch-blob/streams.js.map +1 -1
  123. package/dist/_node_modules/formdata-polyfill/esm.min.cjs.map +1 -1
  124. package/dist/_node_modules/formdata-polyfill/esm.min.js.map +1 -1
  125. package/dist/_node_modules/node-domexception/index.cjs.map +1 -1
  126. package/dist/_node_modules/node-domexception/index.js.map +1 -1
  127. package/dist/_node_modules/node-fetch/src/body.cjs.map +1 -1
  128. package/dist/_node_modules/node-fetch/src/body.js.map +1 -1
  129. package/dist/_node_modules/node-fetch/src/headers.cjs.map +1 -1
  130. package/dist/_node_modules/node-fetch/src/headers.js.map +1 -1
  131. package/dist/_node_modules/node-fetch/src/index.cjs.map +1 -1
  132. package/dist/_node_modules/node-fetch/src/index.js.map +1 -1
  133. package/dist/_node_modules/node-fetch/src/request.cjs.map +1 -1
  134. package/dist/_node_modules/node-fetch/src/request.js.map +1 -1
  135. package/dist/_node_modules/node-fetch/src/utils/is.cjs.map +1 -1
  136. package/dist/_node_modules/node-fetch/src/utils/is.js.map +1 -1
  137. package/dist/_node_modules/node-fetch/src/utils/multipart-parser.cjs.map +1 -1
  138. package/dist/_node_modules/node-fetch/src/utils/multipart-parser.js.map +1 -1
  139. package/dist/_node_modules/node-fetch/src/utils/referrer.cjs.map +1 -1
  140. package/dist/_node_modules/node-fetch/src/utils/referrer.js.map +1 -1
  141. package/dist/_node_modules/web-streams-polyfill/dist/ponyfill.es2018.cjs.map +1 -1
  142. package/dist/_node_modules/web-streams-polyfill/dist/ponyfill.es2018.js.map +1 -1
  143. package/dist/_node_modules/yallist/yallist.cjs.map +1 -1
  144. package/dist/_node_modules/yallist/yallist.js.map +1 -1
  145. package/dist/cli.cjs.map +1 -1
  146. package/dist/cli.js.map +1 -1
  147. package/dist/constants.cjs.map +1 -1
  148. package/dist/constants.js.map +1 -1
  149. package/dist/legacyMigrations/detectFramework.cjs.map +1 -1
  150. package/dist/legacyMigrations/detectFramework.js.map +1 -1
  151. package/dist/legacyMigrations/migrateAssets.cjs.map +1 -1
  152. package/dist/legacyMigrations/migrateAssets.js.map +1 -1
  153. package/dist/legacyMigrations/migrateSMJSON.cjs.map +1 -1
  154. package/dist/legacyMigrations/migrateSMJSON.js.map +1 -1
  155. package/dist/lib/checkIsSentryEnabled.cjs.map +1 -1
  156. package/dist/lib/checkIsSentryEnabled.js.map +1 -1
  157. package/dist/lib/createSliceMachineExpressApp.cjs.map +1 -1
  158. package/dist/lib/createSliceMachineExpressApp.js.map +1 -1
  159. package/dist/lib/locateFileUpward.cjs.map +1 -1
  160. package/dist/lib/locateFileUpward.js.map +1 -1
  161. package/dist/lib/safelyExecute.cjs.map +1 -1
  162. package/dist/lib/safelyExecute.js.map +1 -1
  163. package/dist/lib/sentryFrontendTunnel.cjs.map +1 -1
  164. package/dist/lib/sentryFrontendTunnel.js.map +1 -1
  165. package/dist/lib/setupSentry.cjs.map +1 -1
  166. package/dist/lib/setupSentry.js.map +1 -1
  167. package/dist/packages/start-slicemachine/_node_modules/semver/classes/comparator.cjs.map +1 -1
  168. package/dist/packages/start-slicemachine/_node_modules/semver/classes/comparator.js.map +1 -1
  169. package/dist/packages/start-slicemachine/_node_modules/semver/classes/range.cjs.map +1 -1
  170. package/dist/packages/start-slicemachine/_node_modules/semver/classes/range.js.map +1 -1
  171. package/dist/packages/start-slicemachine/_node_modules/semver/classes/semver.cjs.map +1 -1
  172. package/dist/packages/start-slicemachine/_node_modules/semver/classes/semver.js.map +1 -1
  173. package/dist/packages/start-slicemachine/_node_modules/semver/functions/cmp.cjs.map +1 -1
  174. package/dist/packages/start-slicemachine/_node_modules/semver/functions/cmp.js.map +1 -1
  175. package/dist/packages/start-slicemachine/_node_modules/semver/functions/coerce.cjs.map +1 -1
  176. package/dist/packages/start-slicemachine/_node_modules/semver/functions/coerce.js.map +1 -1
  177. package/dist/packages/start-slicemachine/_node_modules/semver/functions/inc.cjs.map +1 -1
  178. package/dist/packages/start-slicemachine/_node_modules/semver/functions/inc.js.map +1 -1
  179. package/dist/packages/start-slicemachine/_node_modules/semver/functions/parse.cjs.map +1 -1
  180. package/dist/packages/start-slicemachine/_node_modules/semver/functions/parse.js.map +1 -1
  181. package/dist/packages/start-slicemachine/_node_modules/semver/functions/satisfies.cjs.map +1 -1
  182. package/dist/packages/start-slicemachine/_node_modules/semver/functions/satisfies.js.map +1 -1
  183. package/dist/packages/start-slicemachine/_node_modules/semver/internal/re.cjs.map +1 -1
  184. package/dist/packages/start-slicemachine/_node_modules/semver/internal/re.js.map +1 -1
  185. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/max-satisfying.cjs.map +1 -1
  186. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/max-satisfying.js.map +1 -1
  187. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/min-satisfying.cjs.map +1 -1
  188. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/min-satisfying.js.map +1 -1
  189. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/min-version.cjs.map +1 -1
  190. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/min-version.js.map +1 -1
  191. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/simplify.cjs.map +1 -1
  192. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/simplify.js.map +1 -1
  193. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/valid.cjs.map +1 -1
  194. package/dist/packages/start-slicemachine/_node_modules/semver/ranges/valid.js.map +1 -1
  195. package/dist/packages/start-slicemachine/package.json.cjs +1 -1
  196. package/dist/packages/start-slicemachine/package.json.js +1 -1
  197. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"eventbuilder.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/eventbuilder.js"],"sourcesContent":["import { isError, isPlainObject, isParameterizedString } from './is.js';\nimport { addExceptionTypeValue, addExceptionMechanism } from './misc.js';\nimport { normalizeToSize } from './normalize.js';\nimport { extractExceptionKeysForMessage } from './object.js';\n\n/**\n * Extracts stack frames from the error.stack string\n */\nfunction parseStackFrames(stackParser, error) {\n return stackParser(error.stack || '', 1);\n}\n\n/**\n * Extracts stack frames from the error and builds a Sentry Exception\n */\nfunction exceptionFromError(stackParser, error) {\n const exception = {\n type: error.name || error.constructor.name,\n value: error.message,\n };\n\n const frames = parseStackFrames(stackParser, error);\n if (frames.length) {\n exception.stacktrace = { frames };\n }\n\n return exception;\n}\n\nfunction getMessageForObject(exception) {\n if ('name' in exception && typeof exception.name === 'string') {\n let message = `'${exception.name}' captured as exception`;\n\n if ('message' in exception && typeof exception.message === 'string') {\n message += ` with message '${exception.message}'`;\n }\n\n return message;\n } else if ('message' in exception && typeof exception.message === 'string') {\n return exception.message;\n } else {\n // This will allow us to group events based on top-level keys\n // which is much better than creating new group when any key/value change\n return `Object captured as exception with keys: ${extractExceptionKeysForMessage(\n exception ,\n )}`;\n }\n}\n\n/**\n * Builds and Event from a Exception\n *\n * TODO(v8): Remove getHub fallback\n * @hidden\n */\nfunction eventFromUnknownInput(\n // eslint-disable-next-line deprecation/deprecation\n getHubOrClient,\n stackParser,\n exception,\n hint,\n) {\n const client =\n typeof getHubOrClient === 'function'\n ? // eslint-disable-next-line deprecation/deprecation\n getHubOrClient().getClient()\n : getHubOrClient;\n\n let ex = exception;\n const providedMechanism =\n hint && hint.data && (hint.data ).mechanism;\n const mechanism = providedMechanism || {\n handled: true,\n type: 'generic',\n };\n\n let extras;\n\n if (!isError(exception)) {\n if (isPlainObject(exception)) {\n const normalizeDepth = client && client.getOptions().normalizeDepth;\n extras = { ['__serialized__']: normalizeToSize(exception , normalizeDepth) };\n\n const message = getMessageForObject(exception);\n ex = (hint && hint.syntheticException) || new Error(message);\n (ex ).message = message;\n } else {\n // This handles when someone does: `throw \"something awesome\";`\n // We use synthesized Error here so we can extract a (rough) stack trace.\n ex = (hint && hint.syntheticException) || new Error(exception );\n (ex ).message = exception ;\n }\n mechanism.synthetic = true;\n }\n\n const event = {\n exception: {\n values: [exceptionFromError(stackParser, ex )],\n },\n };\n\n if (extras) {\n event.extra = extras;\n }\n\n addExceptionTypeValue(event, undefined, undefined);\n addExceptionMechanism(event, mechanism);\n\n return {\n ...event,\n event_id: hint && hint.event_id,\n };\n}\n\n/**\n * Builds and Event from a Message\n * @hidden\n */\nfunction eventFromMessage(\n stackParser,\n message,\n // eslint-disable-next-line deprecation/deprecation\n level = 'info',\n hint,\n attachStacktrace,\n) {\n const event = {\n event_id: hint && hint.event_id,\n level,\n };\n\n if (attachStacktrace && hint && hint.syntheticException) {\n const frames = parseStackFrames(stackParser, hint.syntheticException);\n if (frames.length) {\n event.exception = {\n values: [\n {\n value: message,\n stacktrace: { frames },\n },\n ],\n };\n }\n }\n\n if (isParameterizedString(message)) {\n const { __sentry_template_string__, __sentry_template_values__ } = message;\n\n event.logentry = {\n message: __sentry_template_string__,\n params: __sentry_template_values__,\n };\n return event;\n }\n\n event.message = message;\n return event;\n}\n\nexport { eventFromMessage, eventFromUnknownInput, exceptionFromError, parseStackFrames };\n//# sourceMappingURL=eventbuilder.js.map\n"],"names":["extractExceptionKeysForMessage","isError","isPlainObject","normalizeToSize","addExceptionTypeValue","addExceptionMechanism","isParameterizedString"],"mappings":";;;;;;AAQA,SAAS,iBAAiB,aAAa,OAAO;AAC5C,SAAO,YAAY,MAAM,SAAS,IAAI,CAAC;AACzC;AAKA,SAAS,mBAAmB,aAAa,OAAO;AAC9C,QAAM,YAAY;AAAA,IAChB,MAAM,MAAM,QAAQ,MAAM,YAAY;AAAA,IACtC,OAAO,MAAM;AAAA,EACjB;AAEE,QAAM,SAAS,iBAAiB,aAAa,KAAK;AAClD,MAAI,OAAO,QAAQ;AACjB,cAAU,aAAa,EAAE;EAC1B;AAED,SAAO;AACT;AAEA,SAAS,oBAAoB,WAAW;AACtC,MAAI,UAAU,aAAa,OAAO,UAAU,SAAS,UAAU;AAC7D,QAAI,UAAU,IAAI,UAAU;AAE5B,QAAI,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AACnE,iBAAW,kBAAkB,UAAU;AAAA,IACxC;AAED,WAAO;AAAA,EACX,WAAa,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AAC1E,WAAO,UAAU;AAAA,EACrB,OAAS;AAGL,WAAO,2CAA2CA,OAA8B;AAAA,MAC9E;AAAA,IACD;AAAA,EACF;AACH;AAQA,SAAS,sBAEP,gBACA,aACA,WACA,MACA;AACA,QAAM,SACJ,OAAO,mBAAmB;AAAA;AAAA,IAEtB,eAAc,EAAG,UAAW;AAAA,MAC5B;AAEN,MAAI,KAAK;AACT,QAAM,oBACJ,QAAQ,KAAK,QAAS,KAAK,KAAO;AACpC,QAAM,YAAY,qBAAqB;AAAA,IACrC,SAAS;AAAA,IACT,MAAM;AAAA,EACV;AAEE,MAAI;AAEJ,MAAI,CAACC,GAAAA,QAAQ,SAAS,GAAG;AACvB,QAAIC,GAAAA,cAAc,SAAS,GAAG;AAC5B,YAAM,iBAAiB,UAAU,OAAO,WAAU,EAAG;AACrD,eAAS,EAAE,CAAC,gBAAgB,GAAGC,UAAe,gBAAC,WAAY,cAAc;AAEzE,YAAM,UAAU,oBAAoB,SAAS;AAC7C,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM,OAAO;AAC3D,MAAC,GAAK,UAAU;AAAA,IACtB,OAAW;AAGL,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM;AACpD,MAAC,GAAK,UAAU;AAAA,IACjB;AACD,cAAU,YAAY;AAAA,EACvB;AAED,QAAM,QAAQ;AAAA,IACZ,WAAW;AAAA,MACT,QAAQ,CAAC,mBAAmB,aAAa,EAAE,CAAE;AAAA,IAC9C;AAAA,EACL;AAEE,MAAI,QAAQ;AACV,UAAM,QAAQ;AAAA,EACf;AAEDC,OAAAA,sBAAsB,OAAO,QAAW,MAAS;AACjDC,6BAAsB,OAAO,SAAS;AAEtC,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,QAAQ,KAAK;AAAA,EAC3B;AACA;AAMA,SAAS,iBACP,aACA,SAEA,QAAQ,QACR,MACA,kBACA;AACA,QAAM,QAAQ;AAAA,IACZ,UAAU,QAAQ,KAAK;AAAA,IACvB;AAAA,EACJ;AAEE,MAAI,oBAAoB,QAAQ,KAAK,oBAAoB;AACvD,UAAM,SAAS,iBAAiB,aAAa,KAAK,kBAAkB;AACpE,QAAI,OAAO,QAAQ;AACjB,YAAM,YAAY;AAAA,QAChB,QAAQ;AAAA,UACN;AAAA,YACE,OAAO;AAAA,YACP,YAAY,EAAE,OAAQ;AAAA,UACvB;AAAA,QACF;AAAA,MACT;AAAA,IACK;AAAA,EACF;AAED,MAAIC,GAAAA,sBAAsB,OAAO,GAAG;AAClC,UAAM,EAAE,4BAA4B,2BAA4B,IAAG;AAEnE,UAAM,WAAW;AAAA,MACf,SAAS;AAAA,MACT,QAAQ;AAAA,IACd;AACI,WAAO;AAAA,EACR;AAED,QAAM,UAAU;AAChB,SAAO;AACT;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"eventbuilder.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/eventbuilder.js"],"sourcesContent":["import { isError, isPlainObject, isParameterizedString } from './is.js';\nimport { addExceptionTypeValue, addExceptionMechanism } from './misc.js';\nimport { normalizeToSize } from './normalize.js';\nimport { extractExceptionKeysForMessage } from './object.js';\n\n/**\n * Extracts stack frames from the error.stack string\n */\nfunction parseStackFrames(stackParser, error) {\n return stackParser(error.stack || '', 1);\n}\n\n/**\n * Extracts stack frames from the error and builds a Sentry Exception\n */\nfunction exceptionFromError(stackParser, error) {\n const exception = {\n type: error.name || error.constructor.name,\n value: error.message,\n };\n\n const frames = parseStackFrames(stackParser, error);\n if (frames.length) {\n exception.stacktrace = { frames };\n }\n\n return exception;\n}\n\nfunction getMessageForObject(exception) {\n if ('name' in exception && typeof exception.name === 'string') {\n let message = `'${exception.name}' captured as exception`;\n\n if ('message' in exception && typeof exception.message === 'string') {\n message += ` with message '${exception.message}'`;\n }\n\n return message;\n } else if ('message' in exception && typeof exception.message === 'string') {\n return exception.message;\n } else {\n // This will allow us to group events based on top-level keys\n // which is much better than creating new group when any key/value change\n return `Object captured as exception with keys: ${extractExceptionKeysForMessage(\n exception ,\n )}`;\n }\n}\n\n/**\n * Builds and Event from a Exception\n *\n * TODO(v8): Remove getHub fallback\n * @hidden\n */\nfunction eventFromUnknownInput(\n // eslint-disable-next-line deprecation/deprecation\n getHubOrClient,\n stackParser,\n exception,\n hint,\n) {\n const client =\n typeof getHubOrClient === 'function'\n ? // eslint-disable-next-line deprecation/deprecation\n getHubOrClient().getClient()\n : getHubOrClient;\n\n let ex = exception;\n const providedMechanism =\n hint && hint.data && (hint.data ).mechanism;\n const mechanism = providedMechanism || {\n handled: true,\n type: 'generic',\n };\n\n let extras;\n\n if (!isError(exception)) {\n if (isPlainObject(exception)) {\n const normalizeDepth = client && client.getOptions().normalizeDepth;\n extras = { ['__serialized__']: normalizeToSize(exception , normalizeDepth) };\n\n const message = getMessageForObject(exception);\n ex = (hint && hint.syntheticException) || new Error(message);\n (ex ).message = message;\n } else {\n // This handles when someone does: `throw \"something awesome\";`\n // We use synthesized Error here so we can extract a (rough) stack trace.\n ex = (hint && hint.syntheticException) || new Error(exception );\n (ex ).message = exception ;\n }\n mechanism.synthetic = true;\n }\n\n const event = {\n exception: {\n values: [exceptionFromError(stackParser, ex )],\n },\n };\n\n if (extras) {\n event.extra = extras;\n }\n\n addExceptionTypeValue(event, undefined, undefined);\n addExceptionMechanism(event, mechanism);\n\n return {\n ...event,\n event_id: hint && hint.event_id,\n };\n}\n\n/**\n * Builds and Event from a Message\n * @hidden\n */\nfunction eventFromMessage(\n stackParser,\n message,\n // eslint-disable-next-line deprecation/deprecation\n level = 'info',\n hint,\n attachStacktrace,\n) {\n const event = {\n event_id: hint && hint.event_id,\n level,\n };\n\n if (attachStacktrace && hint && hint.syntheticException) {\n const frames = parseStackFrames(stackParser, hint.syntheticException);\n if (frames.length) {\n event.exception = {\n values: [\n {\n value: message,\n stacktrace: { frames },\n },\n ],\n };\n }\n }\n\n if (isParameterizedString(message)) {\n const { __sentry_template_string__, __sentry_template_values__ } = message;\n\n event.logentry = {\n message: __sentry_template_string__,\n params: __sentry_template_values__,\n };\n return event;\n }\n\n event.message = message;\n return event;\n}\n\nexport { eventFromMessage, eventFromUnknownInput, exceptionFromError, parseStackFrames };\n//# sourceMappingURL=eventbuilder.js.map\n"],"names":["extractExceptionKeysForMessage","isError","isPlainObject","normalizeToSize","addExceptionTypeValue","addExceptionMechanism","isParameterizedString"],"mappings":";;;;;;AAQA,SAAS,iBAAiB,aAAa,OAAO;AAC5C,SAAO,YAAY,MAAM,SAAS,IAAI,CAAC;AACzC;AAKA,SAAS,mBAAmB,aAAa,OAAO;AAC9C,QAAM,YAAY;AAAA,IAChB,MAAM,MAAM,QAAQ,MAAM,YAAY;AAAA,IACtC,OAAO,MAAM;AAAA,EACjB;AAEE,QAAM,SAAS,iBAAiB,aAAa,KAAK;AAClD,MAAI,OAAO,QAAQ;AACjB,cAAU,aAAa,EAAE;EAC1B;AAED,SAAO;AACT;AAEA,SAAS,oBAAoB,WAAW;AACtC,MAAI,UAAU,aAAa,OAAO,UAAU,SAAS,UAAU;AAC7D,QAAI,UAAU,IAAI,UAAU,IAAI;AAEhC,QAAI,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AACnE,iBAAW,kBAAkB,UAAU,OAAO;AAAA,IAC/C;AAED,WAAO;AAAA,EACX,WAAa,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AAC1E,WAAO,UAAU;AAAA,EACrB,OAAS;AAGL,WAAO,2CAA2CA,OAA8B;AAAA,MAC9E;AAAA,IACD,CAAA;AAAA,EACF;AACH;AAQA,SAAS,sBAEP,gBACA,aACA,WACA,MACA;AACA,QAAM,SACJ,OAAO,mBAAmB;AAAA;AAAA,IAEtB,eAAc,EAAG,UAAW;AAAA,MAC5B;AAEN,MAAI,KAAK;AACT,QAAM,oBACJ,QAAQ,KAAK,QAAS,KAAK,KAAO;AACpC,QAAM,YAAY,qBAAqB;AAAA,IACrC,SAAS;AAAA,IACT,MAAM;AAAA,EACV;AAEE,MAAI;AAEJ,MAAI,CAACC,GAAAA,QAAQ,SAAS,GAAG;AACvB,QAAIC,GAAAA,cAAc,SAAS,GAAG;AAC5B,YAAM,iBAAiB,UAAU,OAAO,WAAU,EAAG;AACrD,eAAS,EAAE,CAAC,gBAAgB,GAAGC,UAAe,gBAAC,WAAY,cAAc;AAEzE,YAAM,UAAU,oBAAoB,SAAS;AAC7C,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM,OAAO;AAC3D,MAAC,GAAK,UAAU;AAAA,IACtB,OAAW;AAGL,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM;AACpD,MAAC,GAAK,UAAU;AAAA,IACjB;AACD,cAAU,YAAY;AAAA,EACvB;AAED,QAAM,QAAQ;AAAA,IACZ,WAAW;AAAA,MACT,QAAQ,CAAC,mBAAmB,aAAa,EAAE,CAAE;AAAA,IAC9C;AAAA,EACL;AAEE,MAAI,QAAQ;AACV,UAAM,QAAQ;AAAA,EACf;AAEDC,OAAAA,sBAAsB,OAAO,QAAW,MAAS;AACjDC,6BAAsB,OAAO,SAAS;AAEtC,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,QAAQ,KAAK;AAAA,EAC3B;AACA;AAMA,SAAS,iBACP,aACA,SAEA,QAAQ,QACR,MACA,kBACA;AACA,QAAM,QAAQ;AAAA,IACZ,UAAU,QAAQ,KAAK;AAAA,IACvB;AAAA,EACJ;AAEE,MAAI,oBAAoB,QAAQ,KAAK,oBAAoB;AACvD,UAAM,SAAS,iBAAiB,aAAa,KAAK,kBAAkB;AACpE,QAAI,OAAO,QAAQ;AACjB,YAAM,YAAY;AAAA,QAChB,QAAQ;AAAA,UACN;AAAA,YACE,OAAO;AAAA,YACP,YAAY,EAAE,OAAQ;AAAA,UACvB;AAAA,QACF;AAAA,MACT;AAAA,IACK;AAAA,EACF;AAED,MAAIC,GAAAA,sBAAsB,OAAO,GAAG;AAClC,UAAM,EAAE,4BAA4B,2BAA4B,IAAG;AAEnE,UAAM,WAAW;AAAA,MACf,SAAS;AAAA,MACT,QAAQ;AAAA,IACd;AACI,WAAO;AAAA,EACR;AAED,QAAM,UAAU;AAChB,SAAO;AACT;;;;;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"eventbuilder.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/eventbuilder.js"],"sourcesContent":["import { isError, isPlainObject, isParameterizedString } from './is.js';\nimport { addExceptionTypeValue, addExceptionMechanism } from './misc.js';\nimport { normalizeToSize } from './normalize.js';\nimport { extractExceptionKeysForMessage } from './object.js';\n\n/**\n * Extracts stack frames from the error.stack string\n */\nfunction parseStackFrames(stackParser, error) {\n return stackParser(error.stack || '', 1);\n}\n\n/**\n * Extracts stack frames from the error and builds a Sentry Exception\n */\nfunction exceptionFromError(stackParser, error) {\n const exception = {\n type: error.name || error.constructor.name,\n value: error.message,\n };\n\n const frames = parseStackFrames(stackParser, error);\n if (frames.length) {\n exception.stacktrace = { frames };\n }\n\n return exception;\n}\n\nfunction getMessageForObject(exception) {\n if ('name' in exception && typeof exception.name === 'string') {\n let message = `'${exception.name}' captured as exception`;\n\n if ('message' in exception && typeof exception.message === 'string') {\n message += ` with message '${exception.message}'`;\n }\n\n return message;\n } else if ('message' in exception && typeof exception.message === 'string') {\n return exception.message;\n } else {\n // This will allow us to group events based on top-level keys\n // which is much better than creating new group when any key/value change\n return `Object captured as exception with keys: ${extractExceptionKeysForMessage(\n exception ,\n )}`;\n }\n}\n\n/**\n * Builds and Event from a Exception\n *\n * TODO(v8): Remove getHub fallback\n * @hidden\n */\nfunction eventFromUnknownInput(\n // eslint-disable-next-line deprecation/deprecation\n getHubOrClient,\n stackParser,\n exception,\n hint,\n) {\n const client =\n typeof getHubOrClient === 'function'\n ? // eslint-disable-next-line deprecation/deprecation\n getHubOrClient().getClient()\n : getHubOrClient;\n\n let ex = exception;\n const providedMechanism =\n hint && hint.data && (hint.data ).mechanism;\n const mechanism = providedMechanism || {\n handled: true,\n type: 'generic',\n };\n\n let extras;\n\n if (!isError(exception)) {\n if (isPlainObject(exception)) {\n const normalizeDepth = client && client.getOptions().normalizeDepth;\n extras = { ['__serialized__']: normalizeToSize(exception , normalizeDepth) };\n\n const message = getMessageForObject(exception);\n ex = (hint && hint.syntheticException) || new Error(message);\n (ex ).message = message;\n } else {\n // This handles when someone does: `throw \"something awesome\";`\n // We use synthesized Error here so we can extract a (rough) stack trace.\n ex = (hint && hint.syntheticException) || new Error(exception );\n (ex ).message = exception ;\n }\n mechanism.synthetic = true;\n }\n\n const event = {\n exception: {\n values: [exceptionFromError(stackParser, ex )],\n },\n };\n\n if (extras) {\n event.extra = extras;\n }\n\n addExceptionTypeValue(event, undefined, undefined);\n addExceptionMechanism(event, mechanism);\n\n return {\n ...event,\n event_id: hint && hint.event_id,\n };\n}\n\n/**\n * Builds and Event from a Message\n * @hidden\n */\nfunction eventFromMessage(\n stackParser,\n message,\n // eslint-disable-next-line deprecation/deprecation\n level = 'info',\n hint,\n attachStacktrace,\n) {\n const event = {\n event_id: hint && hint.event_id,\n level,\n };\n\n if (attachStacktrace && hint && hint.syntheticException) {\n const frames = parseStackFrames(stackParser, hint.syntheticException);\n if (frames.length) {\n event.exception = {\n values: [\n {\n value: message,\n stacktrace: { frames },\n },\n ],\n };\n }\n }\n\n if (isParameterizedString(message)) {\n const { __sentry_template_string__, __sentry_template_values__ } = message;\n\n event.logentry = {\n message: __sentry_template_string__,\n params: __sentry_template_values__,\n };\n return event;\n }\n\n event.message = message;\n return event;\n}\n\nexport { eventFromMessage, eventFromUnknownInput, exceptionFromError, parseStackFrames };\n//# sourceMappingURL=eventbuilder.js.map\n"],"names":[],"mappings":";;;;AAQA,SAAS,iBAAiB,aAAa,OAAO;AAC5C,SAAO,YAAY,MAAM,SAAS,IAAI,CAAC;AACzC;AAKA,SAAS,mBAAmB,aAAa,OAAO;AAC9C,QAAM,YAAY;AAAA,IAChB,MAAM,MAAM,QAAQ,MAAM,YAAY;AAAA,IACtC,OAAO,MAAM;AAAA,EACjB;AAEE,QAAM,SAAS,iBAAiB,aAAa,KAAK;AAClD,MAAI,OAAO,QAAQ;AACjB,cAAU,aAAa,EAAE;EAC1B;AAED,SAAO;AACT;AAEA,SAAS,oBAAoB,WAAW;AACtC,MAAI,UAAU,aAAa,OAAO,UAAU,SAAS,UAAU;AAC7D,QAAI,UAAU,IAAI,UAAU;AAE5B,QAAI,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AACnE,iBAAW,kBAAkB,UAAU;AAAA,IACxC;AAED,WAAO;AAAA,EACX,WAAa,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AAC1E,WAAO,UAAU;AAAA,EACrB,OAAS;AAGL,WAAO,2CAA2C;AAAA,MAChD;AAAA,IACD;AAAA,EACF;AACH;AAQA,SAAS,sBAEP,gBACA,aACA,WACA,MACA;AACA,QAAM,SACJ,OAAO,mBAAmB;AAAA;AAAA,IAEtB,eAAc,EAAG,UAAW;AAAA,MAC5B;AAEN,MAAI,KAAK;AACT,QAAM,oBACJ,QAAQ,KAAK,QAAS,KAAK,KAAO;AACpC,QAAM,YAAY,qBAAqB;AAAA,IACrC,SAAS;AAAA,IACT,MAAM;AAAA,EACV;AAEE,MAAI;AAEJ,MAAI,CAAC,QAAQ,SAAS,GAAG;AACvB,QAAI,cAAc,SAAS,GAAG;AAC5B,YAAM,iBAAiB,UAAU,OAAO,WAAU,EAAG;AACrD,eAAS,EAAE,CAAC,gBAAgB,GAAG,gBAAgB,WAAY,cAAc;AAEzE,YAAM,UAAU,oBAAoB,SAAS;AAC7C,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM,OAAO;AAC3D,MAAC,GAAK,UAAU;AAAA,IACtB,OAAW;AAGL,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM;AACpD,MAAC,GAAK,UAAU;AAAA,IACjB;AACD,cAAU,YAAY;AAAA,EACvB;AAED,QAAM,QAAQ;AAAA,IACZ,WAAW;AAAA,MACT,QAAQ,CAAC,mBAAmB,aAAa,EAAE,CAAE;AAAA,IAC9C;AAAA,EACL;AAEE,MAAI,QAAQ;AACV,UAAM,QAAQ;AAAA,EACf;AAED,wBAAsB,OAAO,QAAW,MAAS;AACjD,wBAAsB,OAAO,SAAS;AAEtC,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,QAAQ,KAAK;AAAA,EAC3B;AACA;AAMA,SAAS,iBACP,aACA,SAEA,QAAQ,QACR,MACA,kBACA;AACA,QAAM,QAAQ;AAAA,IACZ,UAAU,QAAQ,KAAK;AAAA,IACvB;AAAA,EACJ;AAEE,MAAI,oBAAoB,QAAQ,KAAK,oBAAoB;AACvD,UAAM,SAAS,iBAAiB,aAAa,KAAK,kBAAkB;AACpE,QAAI,OAAO,QAAQ;AACjB,YAAM,YAAY;AAAA,QAChB,QAAQ;AAAA,UACN;AAAA,YACE,OAAO;AAAA,YACP,YAAY,EAAE,OAAQ;AAAA,UACvB;AAAA,QACF;AAAA,MACT;AAAA,IACK;AAAA,EACF;AAED,MAAI,sBAAsB,OAAO,GAAG;AAClC,UAAM,EAAE,4BAA4B,2BAA4B,IAAG;AAEnE,UAAM,WAAW;AAAA,MACf,SAAS;AAAA,MACT,QAAQ;AAAA,IACd;AACI,WAAO;AAAA,EACR;AAED,QAAM,UAAU;AAChB,SAAO;AACT;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"eventbuilder.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/eventbuilder.js"],"sourcesContent":["import { isError, isPlainObject, isParameterizedString } from './is.js';\nimport { addExceptionTypeValue, addExceptionMechanism } from './misc.js';\nimport { normalizeToSize } from './normalize.js';\nimport { extractExceptionKeysForMessage } from './object.js';\n\n/**\n * Extracts stack frames from the error.stack string\n */\nfunction parseStackFrames(stackParser, error) {\n return stackParser(error.stack || '', 1);\n}\n\n/**\n * Extracts stack frames from the error and builds a Sentry Exception\n */\nfunction exceptionFromError(stackParser, error) {\n const exception = {\n type: error.name || error.constructor.name,\n value: error.message,\n };\n\n const frames = parseStackFrames(stackParser, error);\n if (frames.length) {\n exception.stacktrace = { frames };\n }\n\n return exception;\n}\n\nfunction getMessageForObject(exception) {\n if ('name' in exception && typeof exception.name === 'string') {\n let message = `'${exception.name}' captured as exception`;\n\n if ('message' in exception && typeof exception.message === 'string') {\n message += ` with message '${exception.message}'`;\n }\n\n return message;\n } else if ('message' in exception && typeof exception.message === 'string') {\n return exception.message;\n } else {\n // This will allow us to group events based on top-level keys\n // which is much better than creating new group when any key/value change\n return `Object captured as exception with keys: ${extractExceptionKeysForMessage(\n exception ,\n )}`;\n }\n}\n\n/**\n * Builds and Event from a Exception\n *\n * TODO(v8): Remove getHub fallback\n * @hidden\n */\nfunction eventFromUnknownInput(\n // eslint-disable-next-line deprecation/deprecation\n getHubOrClient,\n stackParser,\n exception,\n hint,\n) {\n const client =\n typeof getHubOrClient === 'function'\n ? // eslint-disable-next-line deprecation/deprecation\n getHubOrClient().getClient()\n : getHubOrClient;\n\n let ex = exception;\n const providedMechanism =\n hint && hint.data && (hint.data ).mechanism;\n const mechanism = providedMechanism || {\n handled: true,\n type: 'generic',\n };\n\n let extras;\n\n if (!isError(exception)) {\n if (isPlainObject(exception)) {\n const normalizeDepth = client && client.getOptions().normalizeDepth;\n extras = { ['__serialized__']: normalizeToSize(exception , normalizeDepth) };\n\n const message = getMessageForObject(exception);\n ex = (hint && hint.syntheticException) || new Error(message);\n (ex ).message = message;\n } else {\n // This handles when someone does: `throw \"something awesome\";`\n // We use synthesized Error here so we can extract a (rough) stack trace.\n ex = (hint && hint.syntheticException) || new Error(exception );\n (ex ).message = exception ;\n }\n mechanism.synthetic = true;\n }\n\n const event = {\n exception: {\n values: [exceptionFromError(stackParser, ex )],\n },\n };\n\n if (extras) {\n event.extra = extras;\n }\n\n addExceptionTypeValue(event, undefined, undefined);\n addExceptionMechanism(event, mechanism);\n\n return {\n ...event,\n event_id: hint && hint.event_id,\n };\n}\n\n/**\n * Builds and Event from a Message\n * @hidden\n */\nfunction eventFromMessage(\n stackParser,\n message,\n // eslint-disable-next-line deprecation/deprecation\n level = 'info',\n hint,\n attachStacktrace,\n) {\n const event = {\n event_id: hint && hint.event_id,\n level,\n };\n\n if (attachStacktrace && hint && hint.syntheticException) {\n const frames = parseStackFrames(stackParser, hint.syntheticException);\n if (frames.length) {\n event.exception = {\n values: [\n {\n value: message,\n stacktrace: { frames },\n },\n ],\n };\n }\n }\n\n if (isParameterizedString(message)) {\n const { __sentry_template_string__, __sentry_template_values__ } = message;\n\n event.logentry = {\n message: __sentry_template_string__,\n params: __sentry_template_values__,\n };\n return event;\n }\n\n event.message = message;\n return event;\n}\n\nexport { eventFromMessage, eventFromUnknownInput, exceptionFromError, parseStackFrames };\n//# sourceMappingURL=eventbuilder.js.map\n"],"names":[],"mappings":";;;;AAQA,SAAS,iBAAiB,aAAa,OAAO;AAC5C,SAAO,YAAY,MAAM,SAAS,IAAI,CAAC;AACzC;AAKA,SAAS,mBAAmB,aAAa,OAAO;AAC9C,QAAM,YAAY;AAAA,IAChB,MAAM,MAAM,QAAQ,MAAM,YAAY;AAAA,IACtC,OAAO,MAAM;AAAA,EACjB;AAEE,QAAM,SAAS,iBAAiB,aAAa,KAAK;AAClD,MAAI,OAAO,QAAQ;AACjB,cAAU,aAAa,EAAE;EAC1B;AAED,SAAO;AACT;AAEA,SAAS,oBAAoB,WAAW;AACtC,MAAI,UAAU,aAAa,OAAO,UAAU,SAAS,UAAU;AAC7D,QAAI,UAAU,IAAI,UAAU,IAAI;AAEhC,QAAI,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AACnE,iBAAW,kBAAkB,UAAU,OAAO;AAAA,IAC/C;AAED,WAAO;AAAA,EACX,WAAa,aAAa,aAAa,OAAO,UAAU,YAAY,UAAU;AAC1E,WAAO,UAAU;AAAA,EACrB,OAAS;AAGL,WAAO,2CAA2C;AAAA,MAChD;AAAA,IACD,CAAA;AAAA,EACF;AACH;AAQA,SAAS,sBAEP,gBACA,aACA,WACA,MACA;AACA,QAAM,SACJ,OAAO,mBAAmB;AAAA;AAAA,IAEtB,eAAc,EAAG,UAAW;AAAA,MAC5B;AAEN,MAAI,KAAK;AACT,QAAM,oBACJ,QAAQ,KAAK,QAAS,KAAK,KAAO;AACpC,QAAM,YAAY,qBAAqB;AAAA,IACrC,SAAS;AAAA,IACT,MAAM;AAAA,EACV;AAEE,MAAI;AAEJ,MAAI,CAAC,QAAQ,SAAS,GAAG;AACvB,QAAI,cAAc,SAAS,GAAG;AAC5B,YAAM,iBAAiB,UAAU,OAAO,WAAU,EAAG;AACrD,eAAS,EAAE,CAAC,gBAAgB,GAAG,gBAAgB,WAAY,cAAc;AAEzE,YAAM,UAAU,oBAAoB,SAAS;AAC7C,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM,OAAO;AAC3D,MAAC,GAAK,UAAU;AAAA,IACtB,OAAW;AAGL,WAAM,QAAQ,KAAK,sBAAuB,IAAI,MAAM;AACpD,MAAC,GAAK,UAAU;AAAA,IACjB;AACD,cAAU,YAAY;AAAA,EACvB;AAED,QAAM,QAAQ;AAAA,IACZ,WAAW;AAAA,MACT,QAAQ,CAAC,mBAAmB,aAAa,EAAE,CAAE;AAAA,IAC9C;AAAA,EACL;AAEE,MAAI,QAAQ;AACV,UAAM,QAAQ;AAAA,EACf;AAED,wBAAsB,OAAO,QAAW,MAAS;AACjD,wBAAsB,OAAO,SAAS;AAEtC,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,QAAQ,KAAK;AAAA,EAC3B;AACA;AAMA,SAAS,iBACP,aACA,SAEA,QAAQ,QACR,MACA,kBACA;AACA,QAAM,QAAQ;AAAA,IACZ,UAAU,QAAQ,KAAK;AAAA,IACvB;AAAA,EACJ;AAEE,MAAI,oBAAoB,QAAQ,KAAK,oBAAoB;AACvD,UAAM,SAAS,iBAAiB,aAAa,KAAK,kBAAkB;AACpE,QAAI,OAAO,QAAQ;AACjB,YAAM,YAAY;AAAA,QAChB,QAAQ;AAAA,UACN;AAAA,YACE,OAAO;AAAA,YACP,YAAY,EAAE,OAAQ;AAAA,UACvB;AAAA,QACF;AAAA,MACT;AAAA,IACK;AAAA,EACF;AAED,MAAI,sBAAsB,OAAO,GAAG;AAClC,UAAM,EAAE,4BAA4B,2BAA4B,IAAG;AAEnE,UAAM,WAAW;AAAA,MACf,SAAS;AAAA,MACT,QAAQ;AAAA,IACd;AACI,WAAO;AAAA,EACR;AAED,QAAM,UAAU;AAChB,SAAO;AACT;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"_handlers.cjs","sources":["../../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/instrument/_handlers.js"],"sourcesContent":["import { DEBUG_BUILD } from '../debug-build.js';\nimport { logger } from '../logger.js';\nimport { getFunctionName } from '../stacktrace.js';\n\n// We keep the handlers globally\nconst handlers = {};\nconst instrumented = {};\n\n/** Add a handler function. */\nfunction addHandler(type, handler) {\n handlers[type] = handlers[type] || [];\n (handlers[type] ).push(handler);\n}\n\n/**\n * Reset all instrumentation handlers.\n * This can be used by tests to ensure we have a clean slate of instrumentation handlers.\n */\nfunction resetInstrumentationHandlers() {\n Object.keys(handlers).forEach(key => {\n handlers[key ] = undefined;\n });\n}\n\n/** Maybe run an instrumentation function, unless it was already called. */\nfunction maybeInstrument(type, instrumentFn) {\n if (!instrumented[type]) {\n instrumentFn();\n instrumented[type] = true;\n }\n}\n\n/** Trigger handlers for a given instrumentation type. */\nfunction triggerHandlers(type, data) {\n const typeHandlers = type && handlers[type];\n if (!typeHandlers) {\n return;\n }\n\n for (const handler of typeHandlers) {\n try {\n handler(data);\n } catch (e) {\n DEBUG_BUILD &&\n logger.error(\n `Error while triggering instrumentation handler.\\nType: ${type}\\nName: ${getFunctionName(handler)}\\nError:`,\n e,\n );\n }\n }\n}\n\nexport { addHandler, maybeInstrument, resetInstrumentationHandlers, triggerHandlers };\n//# sourceMappingURL=_handlers.js.map\n"],"names":["DEBUG_BUILD","logger","getFunctionName"],"mappings":";;;;;AAKA,MAAM,WAAW,CAAA;AACjB,MAAM,eAAe,CAAA;AAGrB,SAAS,WAAW,MAAM,SAAS;AACjC,WAAS,IAAI,IAAI,SAAS,IAAI,KAAK,CAAA;AACnC,EAAC,SAAS,IAAI,EAAI,KAAK,OAAO;AAChC;AAaA,SAAS,gBAAgB,MAAM,cAAc;AAC3C,MAAI,CAAC,aAAa,IAAI,GAAG;AACvB;AACA,iBAAa,IAAI,IAAI;AAAA,EACtB;AACH;AAGA,SAAS,gBAAgB,MAAM,MAAM;AACnC,QAAM,eAAe,QAAQ,SAAS,IAAI;AAC1C,MAAI,CAAC,cAAc;AACjB;AAAA,EACD;AAED,aAAW,WAAW,cAAc;AAClC,QAAI;AACF,cAAQ,IAAI;AAAA,IACb,SAAQ,GAAP;AACAA,iBAAW,eACTC,OAAAA,OAAO;AAAA,QACL;AAAA,QAA0D;AAAA,QAAeC,WAAAA,gBAAgB,OAAO;AAAA;AAAA,QAChG;AAAA,MACV;AAAA,IACK;AAAA,EACF;AACH;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"_handlers.cjs","sources":["../../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/instrument/_handlers.js"],"sourcesContent":["import { DEBUG_BUILD } from '../debug-build.js';\nimport { logger } from '../logger.js';\nimport { getFunctionName } from '../stacktrace.js';\n\n// We keep the handlers globally\nconst handlers = {};\nconst instrumented = {};\n\n/** Add a handler function. */\nfunction addHandler(type, handler) {\n handlers[type] = handlers[type] || [];\n (handlers[type] ).push(handler);\n}\n\n/**\n * Reset all instrumentation handlers.\n * This can be used by tests to ensure we have a clean slate of instrumentation handlers.\n */\nfunction resetInstrumentationHandlers() {\n Object.keys(handlers).forEach(key => {\n handlers[key ] = undefined;\n });\n}\n\n/** Maybe run an instrumentation function, unless it was already called. */\nfunction maybeInstrument(type, instrumentFn) {\n if (!instrumented[type]) {\n instrumentFn();\n instrumented[type] = true;\n }\n}\n\n/** Trigger handlers for a given instrumentation type. */\nfunction triggerHandlers(type, data) {\n const typeHandlers = type && handlers[type];\n if (!typeHandlers) {\n return;\n }\n\n for (const handler of typeHandlers) {\n try {\n handler(data);\n } catch (e) {\n DEBUG_BUILD &&\n logger.error(\n `Error while triggering instrumentation handler.\\nType: ${type}\\nName: ${getFunctionName(handler)}\\nError:`,\n e,\n );\n }\n }\n}\n\nexport { addHandler, maybeInstrument, resetInstrumentationHandlers, triggerHandlers };\n//# sourceMappingURL=_handlers.js.map\n"],"names":["DEBUG_BUILD","logger","getFunctionName"],"mappings":";;;;;AAKA,MAAM,WAAW,CAAA;AACjB,MAAM,eAAe,CAAA;AAGrB,SAAS,WAAW,MAAM,SAAS;AACjC,WAAS,IAAI,IAAI,SAAS,IAAI,KAAK,CAAA;AACnC,EAAC,SAAS,IAAI,EAAI,KAAK,OAAO;AAChC;AAaA,SAAS,gBAAgB,MAAM,cAAc;AAC3C,MAAI,CAAC,aAAa,IAAI,GAAG;AACvB;AACA,iBAAa,IAAI,IAAI;AAAA,EACtB;AACH;AAGA,SAAS,gBAAgB,MAAM,MAAM;AACnC,QAAM,eAAe,QAAQ,SAAS,IAAI;AAC1C,MAAI,CAAC,cAAc;AACjB;AAAA,EACD;AAED,aAAW,WAAW,cAAc;AAClC,QAAI;AACF,cAAQ,IAAI;AAAA,IACb,SAAQ,GAAG;AACVA,iBAAW,eACTC,OAAAA,OAAO;AAAA,QACL;AAAA,QAA0D,IAAI;AAAA,QAAWC,WAAAA,gBAAgB,OAAO,CAAC;AAAA;AAAA,QACjG;AAAA,MACV;AAAA,IACK;AAAA,EACF;AACH;;;;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"_handlers.js","sources":["../../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/instrument/_handlers.js"],"sourcesContent":["import { DEBUG_BUILD } from '../debug-build.js';\nimport { logger } from '../logger.js';\nimport { getFunctionName } from '../stacktrace.js';\n\n// We keep the handlers globally\nconst handlers = {};\nconst instrumented = {};\n\n/** Add a handler function. */\nfunction addHandler(type, handler) {\n handlers[type] = handlers[type] || [];\n (handlers[type] ).push(handler);\n}\n\n/**\n * Reset all instrumentation handlers.\n * This can be used by tests to ensure we have a clean slate of instrumentation handlers.\n */\nfunction resetInstrumentationHandlers() {\n Object.keys(handlers).forEach(key => {\n handlers[key ] = undefined;\n });\n}\n\n/** Maybe run an instrumentation function, unless it was already called. */\nfunction maybeInstrument(type, instrumentFn) {\n if (!instrumented[type]) {\n instrumentFn();\n instrumented[type] = true;\n }\n}\n\n/** Trigger handlers for a given instrumentation type. */\nfunction triggerHandlers(type, data) {\n const typeHandlers = type && handlers[type];\n if (!typeHandlers) {\n return;\n }\n\n for (const handler of typeHandlers) {\n try {\n handler(data);\n } catch (e) {\n DEBUG_BUILD &&\n logger.error(\n `Error while triggering instrumentation handler.\\nType: ${type}\\nName: ${getFunctionName(handler)}\\nError:`,\n e,\n );\n }\n }\n}\n\nexport { addHandler, maybeInstrument, resetInstrumentationHandlers, triggerHandlers };\n//# sourceMappingURL=_handlers.js.map\n"],"names":[],"mappings":";;;AAKA,MAAM,WAAW,CAAA;AACjB,MAAM,eAAe,CAAA;AAGrB,SAAS,WAAW,MAAM,SAAS;AACjC,WAAS,IAAI,IAAI,SAAS,IAAI,KAAK,CAAA;AACnC,EAAC,SAAS,IAAI,EAAI,KAAK,OAAO;AAChC;AAaA,SAAS,gBAAgB,MAAM,cAAc;AAC3C,MAAI,CAAC,aAAa,IAAI,GAAG;AACvB;AACA,iBAAa,IAAI,IAAI;AAAA,EACtB;AACH;AAGA,SAAS,gBAAgB,MAAM,MAAM;AACnC,QAAM,eAAe,QAAQ,SAAS,IAAI;AAC1C,MAAI,CAAC,cAAc;AACjB;AAAA,EACD;AAED,aAAW,WAAW,cAAc;AAClC,QAAI;AACF,cAAQ,IAAI;AAAA,IACb,SAAQ,GAAP;AACA,qBACE,OAAO;AAAA,QACL;AAAA,QAA0D;AAAA,QAAe,gBAAgB,OAAO;AAAA;AAAA,QAChG;AAAA,MACV;AAAA,IACK;AAAA,EACF;AACH;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"_handlers.js","sources":["../../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/instrument/_handlers.js"],"sourcesContent":["import { DEBUG_BUILD } from '../debug-build.js';\nimport { logger } from '../logger.js';\nimport { getFunctionName } from '../stacktrace.js';\n\n// We keep the handlers globally\nconst handlers = {};\nconst instrumented = {};\n\n/** Add a handler function. */\nfunction addHandler(type, handler) {\n handlers[type] = handlers[type] || [];\n (handlers[type] ).push(handler);\n}\n\n/**\n * Reset all instrumentation handlers.\n * This can be used by tests to ensure we have a clean slate of instrumentation handlers.\n */\nfunction resetInstrumentationHandlers() {\n Object.keys(handlers).forEach(key => {\n handlers[key ] = undefined;\n });\n}\n\n/** Maybe run an instrumentation function, unless it was already called. */\nfunction maybeInstrument(type, instrumentFn) {\n if (!instrumented[type]) {\n instrumentFn();\n instrumented[type] = true;\n }\n}\n\n/** Trigger handlers for a given instrumentation type. */\nfunction triggerHandlers(type, data) {\n const typeHandlers = type && handlers[type];\n if (!typeHandlers) {\n return;\n }\n\n for (const handler of typeHandlers) {\n try {\n handler(data);\n } catch (e) {\n DEBUG_BUILD &&\n logger.error(\n `Error while triggering instrumentation handler.\\nType: ${type}\\nName: ${getFunctionName(handler)}\\nError:`,\n e,\n );\n }\n }\n}\n\nexport { addHandler, maybeInstrument, resetInstrumentationHandlers, triggerHandlers };\n//# sourceMappingURL=_handlers.js.map\n"],"names":[],"mappings":";;;AAKA,MAAM,WAAW,CAAA;AACjB,MAAM,eAAe,CAAA;AAGrB,SAAS,WAAW,MAAM,SAAS;AACjC,WAAS,IAAI,IAAI,SAAS,IAAI,KAAK,CAAA;AACnC,EAAC,SAAS,IAAI,EAAI,KAAK,OAAO;AAChC;AAaA,SAAS,gBAAgB,MAAM,cAAc;AAC3C,MAAI,CAAC,aAAa,IAAI,GAAG;AACvB;AACA,iBAAa,IAAI,IAAI;AAAA,EACtB;AACH;AAGA,SAAS,gBAAgB,MAAM,MAAM;AACnC,QAAM,eAAe,QAAQ,SAAS,IAAI;AAC1C,MAAI,CAAC,cAAc;AACjB;AAAA,EACD;AAED,aAAW,WAAW,cAAc;AAClC,QAAI;AACF,cAAQ,IAAI;AAAA,IACb,SAAQ,GAAG;AACV,qBACE,OAAO;AAAA,QACL;AAAA,QAA0D,IAAI;AAAA,QAAW,gBAAgB,OAAO,CAAC;AAAA;AAAA,QACjG;AAAA,MACV;AAAA,IACK;AAAA,EACF;AACH;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"is.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/is.js"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/unbound-method\nconst objectToString = Object.prototype.toString;\n\n/**\n * Checks whether given value's type is one of a few Error or Error-like\n * {@link isError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isError(wat) {\n switch (objectToString.call(wat)) {\n case '[object Error]':\n case '[object Exception]':\n case '[object DOMException]':\n return true;\n default:\n return isInstanceOf(wat, Error);\n }\n}\n/**\n * Checks whether given value is an instance of the given built-in class.\n *\n * @param wat The value to be checked\n * @param className\n * @returns A boolean representing the result.\n */\nfunction isBuiltin(wat, className) {\n return objectToString.call(wat) === `[object ${className}]`;\n}\n\n/**\n * Checks whether given value's type is ErrorEvent\n * {@link isErrorEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isErrorEvent(wat) {\n return isBuiltin(wat, 'ErrorEvent');\n}\n\n/**\n * Checks whether given value's type is DOMError\n * {@link isDOMError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMError(wat) {\n return isBuiltin(wat, 'DOMError');\n}\n\n/**\n * Checks whether given value's type is DOMException\n * {@link isDOMException}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMException(wat) {\n return isBuiltin(wat, 'DOMException');\n}\n\n/**\n * Checks whether given value's type is a string\n * {@link isString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isString(wat) {\n return isBuiltin(wat, 'String');\n}\n\n/**\n * Checks whether given string is parameterized\n * {@link isParameterizedString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isParameterizedString(wat) {\n return (\n typeof wat === 'object' &&\n wat !== null &&\n '__sentry_template_string__' in wat &&\n '__sentry_template_values__' in wat\n );\n}\n\n/**\n * Checks whether given value is a primitive (undefined, null, number, boolean, string, bigint, symbol)\n * {@link isPrimitive}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPrimitive(wat) {\n return wat === null || isParameterizedString(wat) || (typeof wat !== 'object' && typeof wat !== 'function');\n}\n\n/**\n * Checks whether given value's type is an object literal, or a class instance.\n * {@link isPlainObject}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPlainObject(wat) {\n return isBuiltin(wat, 'Object');\n}\n\n/**\n * Checks whether given value's type is an Event instance\n * {@link isEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isEvent(wat) {\n return typeof Event !== 'undefined' && isInstanceOf(wat, Event);\n}\n\n/**\n * Checks whether given value's type is an Element instance\n * {@link isElement}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isElement(wat) {\n return typeof Element !== 'undefined' && isInstanceOf(wat, Element);\n}\n\n/**\n * Checks whether given value's type is an regexp\n * {@link isRegExp}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isRegExp(wat) {\n return isBuiltin(wat, 'RegExp');\n}\n\n/**\n * Checks whether given value has a then function.\n * @param wat A value to be checked.\n */\nfunction isThenable(wat) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n return Boolean(wat && wat.then && typeof wat.then === 'function');\n}\n\n/**\n * Checks whether given value's type is a SyntheticEvent\n * {@link isSyntheticEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isSyntheticEvent(wat) {\n return isPlainObject(wat) && 'nativeEvent' in wat && 'preventDefault' in wat && 'stopPropagation' in wat;\n}\n\n/**\n * Checks whether given value is NaN\n * {@link isNaN}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isNaN(wat) {\n return typeof wat === 'number' && wat !== wat;\n}\n\n/**\n * Checks whether given value's type is an instance of provided constructor.\n * {@link isInstanceOf}.\n *\n * @param wat A value to be checked.\n * @param base A constructor to be used in a check.\n * @returns A boolean representing the result.\n */\nfunction isInstanceOf(wat, base) {\n try {\n return wat instanceof base;\n } catch (_e) {\n return false;\n }\n}\n\n/**\n * Checks whether given value's type is a Vue ViewModel.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isVueViewModel(wat) {\n // Not using Object.prototype.toString because in Vue 3 it would read the instance's Symbol(Symbol.toStringTag) property.\n return !!(typeof wat === 'object' && wat !== null && ((wat ).__isVue || (wat )._isVue));\n}\n\nexport { isDOMError, isDOMException, isElement, isError, isErrorEvent, isEvent, isInstanceOf, isNaN, isParameterizedString, isPlainObject, isPrimitive, isRegExp, isString, isSyntheticEvent, isThenable, isVueViewModel };\n//# sourceMappingURL=is.js.map\n"],"names":[],"mappings":";;AACA,MAAM,iBAAiB,OAAO,UAAU;AASxC,SAAS,QAAQ,KAAK;AACpB,UAAQ,eAAe,KAAK,GAAG,GAAC;AAAA,IAC9B,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO,aAAa,KAAK,KAAK;AAAA,EACjC;AACH;AAQA,SAAS,UAAU,KAAK,WAAW;AACjC,SAAO,eAAe,KAAK,GAAG,MAAM,WAAW;AACjD;AA0CA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,sBAAsB,KAAK;AAClC,SACE,OAAO,QAAQ,YACf,QAAQ,QACR,gCAAgC,OAChC,gCAAgC;AAEpC;AASA,SAAS,YAAY,KAAK;AACxB,SAAO,QAAQ,QAAQ,sBAAsB,GAAG,KAAM,OAAO,QAAQ,YAAY,OAAO,QAAQ;AAClG;AASA,SAAS,cAAc,KAAK;AAC1B,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,QAAQ,KAAK;AACpB,SAAO,OAAO,UAAU,eAAe,aAAa,KAAK,KAAK;AAChE;AASA,SAAS,UAAU,KAAK;AACtB,SAAO,OAAO,YAAY,eAAe,aAAa,KAAK,OAAO;AACpE;AASA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AAMA,SAAS,WAAW,KAAK;AAEvB,SAAO,QAAQ,OAAO,IAAI,QAAQ,OAAO,IAAI,SAAS,UAAU;AAClE;AASA,SAAS,iBAAiB,KAAK;AAC7B,SAAO,cAAc,GAAG,KAAK,iBAAiB,OAAO,oBAAoB,OAAO,qBAAqB;AACvG;AASA,SAAS,MAAM,KAAK;AAClB,SAAO,OAAO,QAAQ,YAAY,QAAQ;AAC5C;AAUA,SAAS,aAAa,KAAK,MAAM;AAC/B,MAAI;AACF,WAAO,eAAe;AAAA,EACvB,SAAQ,IAAP;AACA,WAAO;AAAA,EACR;AACH;AAQA,SAAS,eAAe,KAAK;AAE3B,SAAO,CAAC,EAAE,OAAO,QAAQ,YAAY,QAAQ,SAAU,IAAM,WAAY,IAAM;AACjF;;;;;;;;;;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"is.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/is.js"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/unbound-method\nconst objectToString = Object.prototype.toString;\n\n/**\n * Checks whether given value's type is one of a few Error or Error-like\n * {@link isError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isError(wat) {\n switch (objectToString.call(wat)) {\n case '[object Error]':\n case '[object Exception]':\n case '[object DOMException]':\n return true;\n default:\n return isInstanceOf(wat, Error);\n }\n}\n/**\n * Checks whether given value is an instance of the given built-in class.\n *\n * @param wat The value to be checked\n * @param className\n * @returns A boolean representing the result.\n */\nfunction isBuiltin(wat, className) {\n return objectToString.call(wat) === `[object ${className}]`;\n}\n\n/**\n * Checks whether given value's type is ErrorEvent\n * {@link isErrorEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isErrorEvent(wat) {\n return isBuiltin(wat, 'ErrorEvent');\n}\n\n/**\n * Checks whether given value's type is DOMError\n * {@link isDOMError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMError(wat) {\n return isBuiltin(wat, 'DOMError');\n}\n\n/**\n * Checks whether given value's type is DOMException\n * {@link isDOMException}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMException(wat) {\n return isBuiltin(wat, 'DOMException');\n}\n\n/**\n * Checks whether given value's type is a string\n * {@link isString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isString(wat) {\n return isBuiltin(wat, 'String');\n}\n\n/**\n * Checks whether given string is parameterized\n * {@link isParameterizedString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isParameterizedString(wat) {\n return (\n typeof wat === 'object' &&\n wat !== null &&\n '__sentry_template_string__' in wat &&\n '__sentry_template_values__' in wat\n );\n}\n\n/**\n * Checks whether given value is a primitive (undefined, null, number, boolean, string, bigint, symbol)\n * {@link isPrimitive}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPrimitive(wat) {\n return wat === null || isParameterizedString(wat) || (typeof wat !== 'object' && typeof wat !== 'function');\n}\n\n/**\n * Checks whether given value's type is an object literal, or a class instance.\n * {@link isPlainObject}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPlainObject(wat) {\n return isBuiltin(wat, 'Object');\n}\n\n/**\n * Checks whether given value's type is an Event instance\n * {@link isEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isEvent(wat) {\n return typeof Event !== 'undefined' && isInstanceOf(wat, Event);\n}\n\n/**\n * Checks whether given value's type is an Element instance\n * {@link isElement}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isElement(wat) {\n return typeof Element !== 'undefined' && isInstanceOf(wat, Element);\n}\n\n/**\n * Checks whether given value's type is an regexp\n * {@link isRegExp}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isRegExp(wat) {\n return isBuiltin(wat, 'RegExp');\n}\n\n/**\n * Checks whether given value has a then function.\n * @param wat A value to be checked.\n */\nfunction isThenable(wat) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n return Boolean(wat && wat.then && typeof wat.then === 'function');\n}\n\n/**\n * Checks whether given value's type is a SyntheticEvent\n * {@link isSyntheticEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isSyntheticEvent(wat) {\n return isPlainObject(wat) && 'nativeEvent' in wat && 'preventDefault' in wat && 'stopPropagation' in wat;\n}\n\n/**\n * Checks whether given value is NaN\n * {@link isNaN}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isNaN(wat) {\n return typeof wat === 'number' && wat !== wat;\n}\n\n/**\n * Checks whether given value's type is an instance of provided constructor.\n * {@link isInstanceOf}.\n *\n * @param wat A value to be checked.\n * @param base A constructor to be used in a check.\n * @returns A boolean representing the result.\n */\nfunction isInstanceOf(wat, base) {\n try {\n return wat instanceof base;\n } catch (_e) {\n return false;\n }\n}\n\n/**\n * Checks whether given value's type is a Vue ViewModel.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isVueViewModel(wat) {\n // Not using Object.prototype.toString because in Vue 3 it would read the instance's Symbol(Symbol.toStringTag) property.\n return !!(typeof wat === 'object' && wat !== null && ((wat ).__isVue || (wat )._isVue));\n}\n\nexport { isDOMError, isDOMException, isElement, isError, isErrorEvent, isEvent, isInstanceOf, isNaN, isParameterizedString, isPlainObject, isPrimitive, isRegExp, isString, isSyntheticEvent, isThenable, isVueViewModel };\n//# sourceMappingURL=is.js.map\n"],"names":[],"mappings":";;AACA,MAAM,iBAAiB,OAAO,UAAU;AASxC,SAAS,QAAQ,KAAK;AACpB,UAAQ,eAAe,KAAK,GAAG,GAAC;AAAA,IAC9B,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO,aAAa,KAAK,KAAK;AAAA,EACjC;AACH;AAQA,SAAS,UAAU,KAAK,WAAW;AACjC,SAAO,eAAe,KAAK,GAAG,MAAM,WAAW,SAAS;AAC1D;AA0CA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,sBAAsB,KAAK;AAClC,SACE,OAAO,QAAQ,YACf,QAAQ,QACR,gCAAgC,OAChC,gCAAgC;AAEpC;AASA,SAAS,YAAY,KAAK;AACxB,SAAO,QAAQ,QAAQ,sBAAsB,GAAG,KAAM,OAAO,QAAQ,YAAY,OAAO,QAAQ;AAClG;AASA,SAAS,cAAc,KAAK;AAC1B,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,QAAQ,KAAK;AACpB,SAAO,OAAO,UAAU,eAAe,aAAa,KAAK,KAAK;AAChE;AASA,SAAS,UAAU,KAAK;AACtB,SAAO,OAAO,YAAY,eAAe,aAAa,KAAK,OAAO;AACpE;AASA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AAMA,SAAS,WAAW,KAAK;AAEvB,SAAO,QAAQ,OAAO,IAAI,QAAQ,OAAO,IAAI,SAAS,UAAU;AAClE;AASA,SAAS,iBAAiB,KAAK;AAC7B,SAAO,cAAc,GAAG,KAAK,iBAAiB,OAAO,oBAAoB,OAAO,qBAAqB;AACvG;AASA,SAAS,MAAM,KAAK;AAClB,SAAO,OAAO,QAAQ,YAAY,QAAQ;AAC5C;AAUA,SAAS,aAAa,KAAK,MAAM;AAC/B,MAAI;AACF,WAAO,eAAe;AAAA,EACvB,SAAQ,IAAI;AACX,WAAO;AAAA,EACR;AACH;AAQA,SAAS,eAAe,KAAK;AAE3B,SAAO,CAAC,EAAE,OAAO,QAAQ,YAAY,QAAQ,SAAU,IAAM,WAAY,IAAM;AACjF;;;;;;;;;;;;;;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"is.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/is.js"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/unbound-method\nconst objectToString = Object.prototype.toString;\n\n/**\n * Checks whether given value's type is one of a few Error or Error-like\n * {@link isError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isError(wat) {\n switch (objectToString.call(wat)) {\n case '[object Error]':\n case '[object Exception]':\n case '[object DOMException]':\n return true;\n default:\n return isInstanceOf(wat, Error);\n }\n}\n/**\n * Checks whether given value is an instance of the given built-in class.\n *\n * @param wat The value to be checked\n * @param className\n * @returns A boolean representing the result.\n */\nfunction isBuiltin(wat, className) {\n return objectToString.call(wat) === `[object ${className}]`;\n}\n\n/**\n * Checks whether given value's type is ErrorEvent\n * {@link isErrorEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isErrorEvent(wat) {\n return isBuiltin(wat, 'ErrorEvent');\n}\n\n/**\n * Checks whether given value's type is DOMError\n * {@link isDOMError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMError(wat) {\n return isBuiltin(wat, 'DOMError');\n}\n\n/**\n * Checks whether given value's type is DOMException\n * {@link isDOMException}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMException(wat) {\n return isBuiltin(wat, 'DOMException');\n}\n\n/**\n * Checks whether given value's type is a string\n * {@link isString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isString(wat) {\n return isBuiltin(wat, 'String');\n}\n\n/**\n * Checks whether given string is parameterized\n * {@link isParameterizedString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isParameterizedString(wat) {\n return (\n typeof wat === 'object' &&\n wat !== null &&\n '__sentry_template_string__' in wat &&\n '__sentry_template_values__' in wat\n );\n}\n\n/**\n * Checks whether given value is a primitive (undefined, null, number, boolean, string, bigint, symbol)\n * {@link isPrimitive}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPrimitive(wat) {\n return wat === null || isParameterizedString(wat) || (typeof wat !== 'object' && typeof wat !== 'function');\n}\n\n/**\n * Checks whether given value's type is an object literal, or a class instance.\n * {@link isPlainObject}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPlainObject(wat) {\n return isBuiltin(wat, 'Object');\n}\n\n/**\n * Checks whether given value's type is an Event instance\n * {@link isEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isEvent(wat) {\n return typeof Event !== 'undefined' && isInstanceOf(wat, Event);\n}\n\n/**\n * Checks whether given value's type is an Element instance\n * {@link isElement}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isElement(wat) {\n return typeof Element !== 'undefined' && isInstanceOf(wat, Element);\n}\n\n/**\n * Checks whether given value's type is an regexp\n * {@link isRegExp}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isRegExp(wat) {\n return isBuiltin(wat, 'RegExp');\n}\n\n/**\n * Checks whether given value has a then function.\n * @param wat A value to be checked.\n */\nfunction isThenable(wat) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n return Boolean(wat && wat.then && typeof wat.then === 'function');\n}\n\n/**\n * Checks whether given value's type is a SyntheticEvent\n * {@link isSyntheticEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isSyntheticEvent(wat) {\n return isPlainObject(wat) && 'nativeEvent' in wat && 'preventDefault' in wat && 'stopPropagation' in wat;\n}\n\n/**\n * Checks whether given value is NaN\n * {@link isNaN}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isNaN(wat) {\n return typeof wat === 'number' && wat !== wat;\n}\n\n/**\n * Checks whether given value's type is an instance of provided constructor.\n * {@link isInstanceOf}.\n *\n * @param wat A value to be checked.\n * @param base A constructor to be used in a check.\n * @returns A boolean representing the result.\n */\nfunction isInstanceOf(wat, base) {\n try {\n return wat instanceof base;\n } catch (_e) {\n return false;\n }\n}\n\n/**\n * Checks whether given value's type is a Vue ViewModel.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isVueViewModel(wat) {\n // Not using Object.prototype.toString because in Vue 3 it would read the instance's Symbol(Symbol.toStringTag) property.\n return !!(typeof wat === 'object' && wat !== null && ((wat ).__isVue || (wat )._isVue));\n}\n\nexport { isDOMError, isDOMException, isElement, isError, isErrorEvent, isEvent, isInstanceOf, isNaN, isParameterizedString, isPlainObject, isPrimitive, isRegExp, isString, isSyntheticEvent, isThenable, isVueViewModel };\n//# sourceMappingURL=is.js.map\n"],"names":[],"mappings":"AACA,MAAM,iBAAiB,OAAO,UAAU;AASxC,SAAS,QAAQ,KAAK;AACpB,UAAQ,eAAe,KAAK,GAAG,GAAC;AAAA,IAC9B,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO,aAAa,KAAK,KAAK;AAAA,EACjC;AACH;AAQA,SAAS,UAAU,KAAK,WAAW;AACjC,SAAO,eAAe,KAAK,GAAG,MAAM,WAAW;AACjD;AA0CA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,sBAAsB,KAAK;AAClC,SACE,OAAO,QAAQ,YACf,QAAQ,QACR,gCAAgC,OAChC,gCAAgC;AAEpC;AASA,SAAS,YAAY,KAAK;AACxB,SAAO,QAAQ,QAAQ,sBAAsB,GAAG,KAAM,OAAO,QAAQ,YAAY,OAAO,QAAQ;AAClG;AASA,SAAS,cAAc,KAAK;AAC1B,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,QAAQ,KAAK;AACpB,SAAO,OAAO,UAAU,eAAe,aAAa,KAAK,KAAK;AAChE;AASA,SAAS,UAAU,KAAK;AACtB,SAAO,OAAO,YAAY,eAAe,aAAa,KAAK,OAAO;AACpE;AASA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AAMA,SAAS,WAAW,KAAK;AAEvB,SAAO,QAAQ,OAAO,IAAI,QAAQ,OAAO,IAAI,SAAS,UAAU;AAClE;AASA,SAAS,iBAAiB,KAAK;AAC7B,SAAO,cAAc,GAAG,KAAK,iBAAiB,OAAO,oBAAoB,OAAO,qBAAqB;AACvG;AASA,SAAS,MAAM,KAAK;AAClB,SAAO,OAAO,QAAQ,YAAY,QAAQ;AAC5C;AAUA,SAAS,aAAa,KAAK,MAAM;AAC/B,MAAI;AACF,WAAO,eAAe;AAAA,EACvB,SAAQ,IAAP;AACA,WAAO;AAAA,EACR;AACH;AAQA,SAAS,eAAe,KAAK;AAE3B,SAAO,CAAC,EAAE,OAAO,QAAQ,YAAY,QAAQ,SAAU,IAAM,WAAY,IAAM;AACjF;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"is.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/is.js"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/unbound-method\nconst objectToString = Object.prototype.toString;\n\n/**\n * Checks whether given value's type is one of a few Error or Error-like\n * {@link isError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isError(wat) {\n switch (objectToString.call(wat)) {\n case '[object Error]':\n case '[object Exception]':\n case '[object DOMException]':\n return true;\n default:\n return isInstanceOf(wat, Error);\n }\n}\n/**\n * Checks whether given value is an instance of the given built-in class.\n *\n * @param wat The value to be checked\n * @param className\n * @returns A boolean representing the result.\n */\nfunction isBuiltin(wat, className) {\n return objectToString.call(wat) === `[object ${className}]`;\n}\n\n/**\n * Checks whether given value's type is ErrorEvent\n * {@link isErrorEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isErrorEvent(wat) {\n return isBuiltin(wat, 'ErrorEvent');\n}\n\n/**\n * Checks whether given value's type is DOMError\n * {@link isDOMError}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMError(wat) {\n return isBuiltin(wat, 'DOMError');\n}\n\n/**\n * Checks whether given value's type is DOMException\n * {@link isDOMException}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isDOMException(wat) {\n return isBuiltin(wat, 'DOMException');\n}\n\n/**\n * Checks whether given value's type is a string\n * {@link isString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isString(wat) {\n return isBuiltin(wat, 'String');\n}\n\n/**\n * Checks whether given string is parameterized\n * {@link isParameterizedString}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isParameterizedString(wat) {\n return (\n typeof wat === 'object' &&\n wat !== null &&\n '__sentry_template_string__' in wat &&\n '__sentry_template_values__' in wat\n );\n}\n\n/**\n * Checks whether given value is a primitive (undefined, null, number, boolean, string, bigint, symbol)\n * {@link isPrimitive}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPrimitive(wat) {\n return wat === null || isParameterizedString(wat) || (typeof wat !== 'object' && typeof wat !== 'function');\n}\n\n/**\n * Checks whether given value's type is an object literal, or a class instance.\n * {@link isPlainObject}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isPlainObject(wat) {\n return isBuiltin(wat, 'Object');\n}\n\n/**\n * Checks whether given value's type is an Event instance\n * {@link isEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isEvent(wat) {\n return typeof Event !== 'undefined' && isInstanceOf(wat, Event);\n}\n\n/**\n * Checks whether given value's type is an Element instance\n * {@link isElement}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isElement(wat) {\n return typeof Element !== 'undefined' && isInstanceOf(wat, Element);\n}\n\n/**\n * Checks whether given value's type is an regexp\n * {@link isRegExp}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isRegExp(wat) {\n return isBuiltin(wat, 'RegExp');\n}\n\n/**\n * Checks whether given value has a then function.\n * @param wat A value to be checked.\n */\nfunction isThenable(wat) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n return Boolean(wat && wat.then && typeof wat.then === 'function');\n}\n\n/**\n * Checks whether given value's type is a SyntheticEvent\n * {@link isSyntheticEvent}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isSyntheticEvent(wat) {\n return isPlainObject(wat) && 'nativeEvent' in wat && 'preventDefault' in wat && 'stopPropagation' in wat;\n}\n\n/**\n * Checks whether given value is NaN\n * {@link isNaN}.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isNaN(wat) {\n return typeof wat === 'number' && wat !== wat;\n}\n\n/**\n * Checks whether given value's type is an instance of provided constructor.\n * {@link isInstanceOf}.\n *\n * @param wat A value to be checked.\n * @param base A constructor to be used in a check.\n * @returns A boolean representing the result.\n */\nfunction isInstanceOf(wat, base) {\n try {\n return wat instanceof base;\n } catch (_e) {\n return false;\n }\n}\n\n/**\n * Checks whether given value's type is a Vue ViewModel.\n *\n * @param wat A value to be checked.\n * @returns A boolean representing the result.\n */\nfunction isVueViewModel(wat) {\n // Not using Object.prototype.toString because in Vue 3 it would read the instance's Symbol(Symbol.toStringTag) property.\n return !!(typeof wat === 'object' && wat !== null && ((wat ).__isVue || (wat )._isVue));\n}\n\nexport { isDOMError, isDOMException, isElement, isError, isErrorEvent, isEvent, isInstanceOf, isNaN, isParameterizedString, isPlainObject, isPrimitive, isRegExp, isString, isSyntheticEvent, isThenable, isVueViewModel };\n//# sourceMappingURL=is.js.map\n"],"names":[],"mappings":"AACA,MAAM,iBAAiB,OAAO,UAAU;AASxC,SAAS,QAAQ,KAAK;AACpB,UAAQ,eAAe,KAAK,GAAG,GAAC;AAAA,IAC9B,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO,aAAa,KAAK,KAAK;AAAA,EACjC;AACH;AAQA,SAAS,UAAU,KAAK,WAAW;AACjC,SAAO,eAAe,KAAK,GAAG,MAAM,WAAW,SAAS;AAC1D;AA0CA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,sBAAsB,KAAK;AAClC,SACE,OAAO,QAAQ,YACf,QAAQ,QACR,gCAAgC,OAChC,gCAAgC;AAEpC;AASA,SAAS,YAAY,KAAK;AACxB,SAAO,QAAQ,QAAQ,sBAAsB,GAAG,KAAM,OAAO,QAAQ,YAAY,OAAO,QAAQ;AAClG;AASA,SAAS,cAAc,KAAK;AAC1B,SAAO,UAAU,KAAK,QAAQ;AAChC;AASA,SAAS,QAAQ,KAAK;AACpB,SAAO,OAAO,UAAU,eAAe,aAAa,KAAK,KAAK;AAChE;AASA,SAAS,UAAU,KAAK;AACtB,SAAO,OAAO,YAAY,eAAe,aAAa,KAAK,OAAO;AACpE;AASA,SAAS,SAAS,KAAK;AACrB,SAAO,UAAU,KAAK,QAAQ;AAChC;AAMA,SAAS,WAAW,KAAK;AAEvB,SAAO,QAAQ,OAAO,IAAI,QAAQ,OAAO,IAAI,SAAS,UAAU;AAClE;AASA,SAAS,iBAAiB,KAAK;AAC7B,SAAO,cAAc,GAAG,KAAK,iBAAiB,OAAO,oBAAoB,OAAO,qBAAqB;AACvG;AASA,SAAS,MAAM,KAAK;AAClB,SAAO,OAAO,QAAQ,YAAY,QAAQ;AAC5C;AAUA,SAAS,aAAa,KAAK,MAAM;AAC/B,MAAI;AACF,WAAO,eAAe;AAAA,EACvB,SAAQ,IAAI;AACX,WAAO;AAAA,EACR;AACH;AAQA,SAAS,eAAe,KAAK;AAE3B,SAAO,CAAC,EAAE,OAAO,QAAQ,YAAY,QAAQ,SAAU,IAAM,WAAY,IAAM;AACjF;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/logger.js"],"sourcesContent":["import { DEBUG_BUILD } from './debug-build.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/** Prefix for logging strings */\nconst PREFIX = 'Sentry Logger ';\n\nconst CONSOLE_LEVELS = [\n 'debug',\n 'info',\n 'warn',\n 'error',\n 'log',\n 'assert',\n 'trace',\n] ;\n\n/** This may be mutated by the console instrumentation. */\nconst originalConsoleMethods\n\n = {};\n\n/** JSDoc */\n\n/**\n * Temporarily disable sentry console instrumentations.\n *\n * @param callback The function to run against the original `console` messages\n * @returns The results of the callback\n */\nfunction consoleSandbox(callback) {\n if (!('console' in GLOBAL_OBJ)) {\n return callback();\n }\n\n const console = GLOBAL_OBJ.console ;\n const wrappedFuncs = {};\n\n const wrappedLevels = Object.keys(originalConsoleMethods) ;\n\n // Restore all wrapped console methods\n wrappedLevels.forEach(level => {\n const originalConsoleMethod = originalConsoleMethods[level] ;\n wrappedFuncs[level] = console[level] ;\n console[level] = originalConsoleMethod;\n });\n\n try {\n return callback();\n } finally {\n // Revert restoration to wrapped state\n wrappedLevels.forEach(level => {\n console[level] = wrappedFuncs[level] ;\n });\n }\n}\n\nfunction makeLogger() {\n let enabled = false;\n const logger = {\n enable: () => {\n enabled = true;\n },\n disable: () => {\n enabled = false;\n },\n isEnabled: () => enabled,\n };\n\n if (DEBUG_BUILD) {\n CONSOLE_LEVELS.forEach(name => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logger[name] = (...args) => {\n if (enabled) {\n consoleSandbox(() => {\n GLOBAL_OBJ.console[name](`${PREFIX}[${name}]:`, ...args);\n });\n }\n };\n });\n } else {\n CONSOLE_LEVELS.forEach(name => {\n logger[name] = () => undefined;\n });\n }\n\n return logger ;\n}\n\nconst logger = makeLogger();\n\nexport { CONSOLE_LEVELS, consoleSandbox, logger, originalConsoleMethods };\n//# sourceMappingURL=logger.js.map\n"],"names":["GLOBAL_OBJ","logger","DEBUG_BUILD"],"mappings":";;;;AAIA,MAAM,SAAS;AAEV,MAAC,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAGK,MAAC,yBAEH,CAAG;AAUN,SAAS,eAAe,UAAU;AAChC,MAAI,EAAE,aAAaA,UAAAA,aAAa;AAC9B,WAAO,SAAQ;AAAA,EAChB;AAED,QAAM,UAAUA,UAAU,WAAC;AAC3B,QAAM,eAAe,CAAA;AAErB,QAAM,gBAAgB,OAAO,KAAK,sBAAsB;AAGxD,gBAAc,QAAQ,WAAS;AAC7B,UAAM,wBAAwB,uBAAuB,KAAK;AAC1D,iBAAa,KAAK,IAAI,QAAQ,KAAK;AACnC,YAAQ,KAAK,IAAI;AAAA,EACrB,CAAG;AAED,MAAI;AACF,WAAO,SAAQ;AAAA,EACnB,UAAY;AAER,kBAAc,QAAQ,WAAS;AAC7B,cAAQ,KAAK,IAAI,aAAa,KAAK;AAAA,IACzC,CAAK;AAAA,EACF;AACH;AAEA,SAAS,aAAa;AACpB,MAAI,UAAU;AACd,QAAMC,UAAS;AAAA,IACb,QAAQ,MAAM;AACZ,gBAAU;AAAA,IACX;AAAA,IACD,SAAS,MAAM;AACb,gBAAU;AAAA,IACX;AAAA,IACD,WAAW,MAAM;AAAA,EACrB;AAEE,MAAIC,wBAAa;AACf,mBAAe,QAAQ,UAAQ;AAE7B,MAAAD,QAAO,IAAI,IAAI,IAAI,SAAS;AAC1B,YAAI,SAAS;AACX,yBAAe,MAAM;AACnBD,sBAAAA,WAAW,QAAQ,IAAI,EAAE,GAAG,UAAU,UAAU,GAAG,IAAI;AAAA,UACnE,CAAW;AAAA,QACF;AAAA,MACT;AAAA,IACA,CAAK;AAAA,EACL,OAAS;AACL,mBAAe,QAAQ,UAAQ;AAC7B,MAAAC,QAAO,IAAI,IAAI,MAAM;AAAA,IAC3B,CAAK;AAAA,EACF;AAED,SAAOA;AACT;AAEK,MAAC,SAAS,WAAU;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"logger.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/logger.js"],"sourcesContent":["import { DEBUG_BUILD } from './debug-build.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/** Prefix for logging strings */\nconst PREFIX = 'Sentry Logger ';\n\nconst CONSOLE_LEVELS = [\n 'debug',\n 'info',\n 'warn',\n 'error',\n 'log',\n 'assert',\n 'trace',\n] ;\n\n/** This may be mutated by the console instrumentation. */\nconst originalConsoleMethods\n\n = {};\n\n/** JSDoc */\n\n/**\n * Temporarily disable sentry console instrumentations.\n *\n * @param callback The function to run against the original `console` messages\n * @returns The results of the callback\n */\nfunction consoleSandbox(callback) {\n if (!('console' in GLOBAL_OBJ)) {\n return callback();\n }\n\n const console = GLOBAL_OBJ.console ;\n const wrappedFuncs = {};\n\n const wrappedLevels = Object.keys(originalConsoleMethods) ;\n\n // Restore all wrapped console methods\n wrappedLevels.forEach(level => {\n const originalConsoleMethod = originalConsoleMethods[level] ;\n wrappedFuncs[level] = console[level] ;\n console[level] = originalConsoleMethod;\n });\n\n try {\n return callback();\n } finally {\n // Revert restoration to wrapped state\n wrappedLevels.forEach(level => {\n console[level] = wrappedFuncs[level] ;\n });\n }\n}\n\nfunction makeLogger() {\n let enabled = false;\n const logger = {\n enable: () => {\n enabled = true;\n },\n disable: () => {\n enabled = false;\n },\n isEnabled: () => enabled,\n };\n\n if (DEBUG_BUILD) {\n CONSOLE_LEVELS.forEach(name => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logger[name] = (...args) => {\n if (enabled) {\n consoleSandbox(() => {\n GLOBAL_OBJ.console[name](`${PREFIX}[${name}]:`, ...args);\n });\n }\n };\n });\n } else {\n CONSOLE_LEVELS.forEach(name => {\n logger[name] = () => undefined;\n });\n }\n\n return logger ;\n}\n\nconst logger = makeLogger();\n\nexport { CONSOLE_LEVELS, consoleSandbox, logger, originalConsoleMethods };\n//# sourceMappingURL=logger.js.map\n"],"names":["GLOBAL_OBJ","logger","DEBUG_BUILD"],"mappings":";;;;AAIA,MAAM,SAAS;AAEV,MAAC,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAGK,MAAC,yBAEH,CAAG;AAUN,SAAS,eAAe,UAAU;AAChC,MAAI,EAAE,aAAaA,UAAAA,aAAa;AAC9B,WAAO,SAAQ;AAAA,EAChB;AAED,QAAM,UAAUA,UAAU,WAAC;AAC3B,QAAM,eAAe,CAAA;AAErB,QAAM,gBAAgB,OAAO,KAAK,sBAAsB;AAGxD,gBAAc,QAAQ,WAAS;AAC7B,UAAM,wBAAwB,uBAAuB,KAAK;AAC1D,iBAAa,KAAK,IAAI,QAAQ,KAAK;AACnC,YAAQ,KAAK,IAAI;AAAA,EACrB,CAAG;AAED,MAAI;AACF,WAAO,SAAQ;AAAA,EACnB,UAAY;AAER,kBAAc,QAAQ,WAAS;AAC7B,cAAQ,KAAK,IAAI,aAAa,KAAK;AAAA,IACzC,CAAK;AAAA,EACF;AACH;AAEA,SAAS,aAAa;AACpB,MAAI,UAAU;AACd,QAAMC,UAAS;AAAA,IACb,QAAQ,MAAM;AACZ,gBAAU;AAAA,IACX;AAAA,IACD,SAAS,MAAM;AACb,gBAAU;AAAA,IACX;AAAA,IACD,WAAW,MAAM;AAAA,EACrB;AAEE,MAAIC,wBAAa;AACf,mBAAe,QAAQ,UAAQ;AAE7B,MAAAD,QAAO,IAAI,IAAI,IAAI,SAAS;AAC1B,YAAI,SAAS;AACX,yBAAe,MAAM;AACnBD,sBAAAA,WAAW,QAAQ,IAAI,EAAE,GAAG,MAAM,IAAI,IAAI,MAAM,GAAG,IAAI;AAAA,UACnE,CAAW;AAAA,QACF;AAAA,MACT;AAAA,IACA,CAAK;AAAA,EACL,OAAS;AACL,mBAAe,QAAQ,UAAQ;AAC7B,MAAAC,QAAO,IAAI,IAAI,MAAM;AAAA,IAC3B,CAAK;AAAA,EACF;AAED,SAAOA;AACT;AAEK,MAAC,SAAS,WAAU;;;;;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/logger.js"],"sourcesContent":["import { DEBUG_BUILD } from './debug-build.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/** Prefix for logging strings */\nconst PREFIX = 'Sentry Logger ';\n\nconst CONSOLE_LEVELS = [\n 'debug',\n 'info',\n 'warn',\n 'error',\n 'log',\n 'assert',\n 'trace',\n] ;\n\n/** This may be mutated by the console instrumentation. */\nconst originalConsoleMethods\n\n = {};\n\n/** JSDoc */\n\n/**\n * Temporarily disable sentry console instrumentations.\n *\n * @param callback The function to run against the original `console` messages\n * @returns The results of the callback\n */\nfunction consoleSandbox(callback) {\n if (!('console' in GLOBAL_OBJ)) {\n return callback();\n }\n\n const console = GLOBAL_OBJ.console ;\n const wrappedFuncs = {};\n\n const wrappedLevels = Object.keys(originalConsoleMethods) ;\n\n // Restore all wrapped console methods\n wrappedLevels.forEach(level => {\n const originalConsoleMethod = originalConsoleMethods[level] ;\n wrappedFuncs[level] = console[level] ;\n console[level] = originalConsoleMethod;\n });\n\n try {\n return callback();\n } finally {\n // Revert restoration to wrapped state\n wrappedLevels.forEach(level => {\n console[level] = wrappedFuncs[level] ;\n });\n }\n}\n\nfunction makeLogger() {\n let enabled = false;\n const logger = {\n enable: () => {\n enabled = true;\n },\n disable: () => {\n enabled = false;\n },\n isEnabled: () => enabled,\n };\n\n if (DEBUG_BUILD) {\n CONSOLE_LEVELS.forEach(name => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logger[name] = (...args) => {\n if (enabled) {\n consoleSandbox(() => {\n GLOBAL_OBJ.console[name](`${PREFIX}[${name}]:`, ...args);\n });\n }\n };\n });\n } else {\n CONSOLE_LEVELS.forEach(name => {\n logger[name] = () => undefined;\n });\n }\n\n return logger ;\n}\n\nconst logger = makeLogger();\n\nexport { CONSOLE_LEVELS, consoleSandbox, logger, originalConsoleMethods };\n//# sourceMappingURL=logger.js.map\n"],"names":["logger"],"mappings":";;AAIA,MAAM,SAAS;AAEV,MAAC,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAGK,MAAC,yBAEH,CAAG;AAUN,SAAS,eAAe,UAAU;AAChC,MAAI,EAAE,aAAa,aAAa;AAC9B,WAAO,SAAQ;AAAA,EAChB;AAED,QAAM,UAAU,WAAW;AAC3B,QAAM,eAAe,CAAA;AAErB,QAAM,gBAAgB,OAAO,KAAK,sBAAsB;AAGxD,gBAAc,QAAQ,WAAS;AAC7B,UAAM,wBAAwB,uBAAuB,KAAK;AAC1D,iBAAa,KAAK,IAAI,QAAQ,KAAK;AACnC,YAAQ,KAAK,IAAI;AAAA,EACrB,CAAG;AAED,MAAI;AACF,WAAO,SAAQ;AAAA,EACnB,UAAY;AAER,kBAAc,QAAQ,WAAS;AAC7B,cAAQ,KAAK,IAAI,aAAa,KAAK;AAAA,IACzC,CAAK;AAAA,EACF;AACH;AAEA,SAAS,aAAa;AACpB,MAAI,UAAU;AACd,QAAMA,UAAS;AAAA,IACb,QAAQ,MAAM;AACZ,gBAAU;AAAA,IACX;AAAA,IACD,SAAS,MAAM;AACb,gBAAU;AAAA,IACX;AAAA,IACD,WAAW,MAAM;AAAA,EACrB;AAEE,MAAI,aAAa;AACf,mBAAe,QAAQ,UAAQ;AAE7B,MAAAA,QAAO,IAAI,IAAI,IAAI,SAAS;AAC1B,YAAI,SAAS;AACX,yBAAe,MAAM;AACnB,uBAAW,QAAQ,IAAI,EAAE,GAAG,UAAU,UAAU,GAAG,IAAI;AAAA,UACnE,CAAW;AAAA,QACF;AAAA,MACT;AAAA,IACA,CAAK;AAAA,EACL,OAAS;AACL,mBAAe,QAAQ,UAAQ;AAC7B,MAAAA,QAAO,IAAI,IAAI,MAAM;AAAA,IAC3B,CAAK;AAAA,EACF;AAED,SAAOA;AACT;AAEK,MAAC,SAAS,WAAU;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"logger.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/logger.js"],"sourcesContent":["import { DEBUG_BUILD } from './debug-build.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/** Prefix for logging strings */\nconst PREFIX = 'Sentry Logger ';\n\nconst CONSOLE_LEVELS = [\n 'debug',\n 'info',\n 'warn',\n 'error',\n 'log',\n 'assert',\n 'trace',\n] ;\n\n/** This may be mutated by the console instrumentation. */\nconst originalConsoleMethods\n\n = {};\n\n/** JSDoc */\n\n/**\n * Temporarily disable sentry console instrumentations.\n *\n * @param callback The function to run against the original `console` messages\n * @returns The results of the callback\n */\nfunction consoleSandbox(callback) {\n if (!('console' in GLOBAL_OBJ)) {\n return callback();\n }\n\n const console = GLOBAL_OBJ.console ;\n const wrappedFuncs = {};\n\n const wrappedLevels = Object.keys(originalConsoleMethods) ;\n\n // Restore all wrapped console methods\n wrappedLevels.forEach(level => {\n const originalConsoleMethod = originalConsoleMethods[level] ;\n wrappedFuncs[level] = console[level] ;\n console[level] = originalConsoleMethod;\n });\n\n try {\n return callback();\n } finally {\n // Revert restoration to wrapped state\n wrappedLevels.forEach(level => {\n console[level] = wrappedFuncs[level] ;\n });\n }\n}\n\nfunction makeLogger() {\n let enabled = false;\n const logger = {\n enable: () => {\n enabled = true;\n },\n disable: () => {\n enabled = false;\n },\n isEnabled: () => enabled,\n };\n\n if (DEBUG_BUILD) {\n CONSOLE_LEVELS.forEach(name => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logger[name] = (...args) => {\n if (enabled) {\n consoleSandbox(() => {\n GLOBAL_OBJ.console[name](`${PREFIX}[${name}]:`, ...args);\n });\n }\n };\n });\n } else {\n CONSOLE_LEVELS.forEach(name => {\n logger[name] = () => undefined;\n });\n }\n\n return logger ;\n}\n\nconst logger = makeLogger();\n\nexport { CONSOLE_LEVELS, consoleSandbox, logger, originalConsoleMethods };\n//# sourceMappingURL=logger.js.map\n"],"names":["logger"],"mappings":";;AAIA,MAAM,SAAS;AAEV,MAAC,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAGK,MAAC,yBAEH,CAAG;AAUN,SAAS,eAAe,UAAU;AAChC,MAAI,EAAE,aAAa,aAAa;AAC9B,WAAO,SAAQ;AAAA,EAChB;AAED,QAAM,UAAU,WAAW;AAC3B,QAAM,eAAe,CAAA;AAErB,QAAM,gBAAgB,OAAO,KAAK,sBAAsB;AAGxD,gBAAc,QAAQ,WAAS;AAC7B,UAAM,wBAAwB,uBAAuB,KAAK;AAC1D,iBAAa,KAAK,IAAI,QAAQ,KAAK;AACnC,YAAQ,KAAK,IAAI;AAAA,EACrB,CAAG;AAED,MAAI;AACF,WAAO,SAAQ;AAAA,EACnB,UAAY;AAER,kBAAc,QAAQ,WAAS;AAC7B,cAAQ,KAAK,IAAI,aAAa,KAAK;AAAA,IACzC,CAAK;AAAA,EACF;AACH;AAEA,SAAS,aAAa;AACpB,MAAI,UAAU;AACd,QAAMA,UAAS;AAAA,IACb,QAAQ,MAAM;AACZ,gBAAU;AAAA,IACX;AAAA,IACD,SAAS,MAAM;AACb,gBAAU;AAAA,IACX;AAAA,IACD,WAAW,MAAM;AAAA,EACrB;AAEE,MAAI,aAAa;AACf,mBAAe,QAAQ,UAAQ;AAE7B,MAAAA,QAAO,IAAI,IAAI,IAAI,SAAS;AAC1B,YAAI,SAAS;AACX,yBAAe,MAAM;AACnB,uBAAW,QAAQ,IAAI,EAAE,GAAG,MAAM,IAAI,IAAI,MAAM,GAAG,IAAI;AAAA,UACnE,CAAW;AAAA,QACF;AAAA,MACT;AAAA,IACA,CAAK;AAAA,EACL,OAAS;AACL,mBAAe,QAAQ,UAAQ;AAC7B,MAAAA,QAAO,IAAI,IAAI,MAAM;AAAA,IAC3B,CAAK;AAAA,EACF;AAED,SAAOA;AACT;AAEK,MAAC,SAAS,WAAU;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"misc.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/misc.js"],"sourcesContent":["import { addNonEnumerableProperty } from './object.js';\nimport { snipLine } from './string.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/**\n * UUID4 generator\n *\n * @returns string Generated UUID4.\n */\nfunction uuid4() {\n const gbl = GLOBAL_OBJ ;\n const crypto = gbl.crypto || gbl.msCrypto;\n\n let getRandomByte = () => Math.random() * 16;\n try {\n if (crypto && crypto.randomUUID) {\n return crypto.randomUUID().replace(/-/g, '');\n }\n if (crypto && crypto.getRandomValues) {\n getRandomByte = () => {\n // crypto.getRandomValues might return undefined instead of the typed array\n // in old Chromium versions (e.g. 23.0.1235.0 (151422))\n // However, `typedArray` is still filled in-place.\n // @see https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues#typedarray\n const typedArray = new Uint8Array(1);\n crypto.getRandomValues(typedArray);\n return typedArray[0];\n };\n }\n } catch (_) {\n // some runtimes can crash invoking crypto\n // https://github.com/getsentry/sentry-javascript/issues/8935\n }\n\n // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/2117523#2117523\n // Concatenating the following numbers as strings results in '10000000100040008000100000000000'\n return (([1e7] ) + 1e3 + 4e3 + 8e3 + 1e11).replace(/[018]/g, c =>\n // eslint-disable-next-line no-bitwise\n ((c ) ^ ((getRandomByte() & 15) >> ((c ) / 4))).toString(16),\n );\n}\n\nfunction getFirstException(event) {\n return event.exception && event.exception.values ? event.exception.values[0] : undefined;\n}\n\n/**\n * Extracts either message or type+value from an event that can be used for user-facing logs\n * @returns event's description\n */\nfunction getEventDescription(event) {\n const { message, event_id: eventId } = event;\n if (message) {\n return message;\n }\n\n const firstException = getFirstException(event);\n if (firstException) {\n if (firstException.type && firstException.value) {\n return `${firstException.type}: ${firstException.value}`;\n }\n return firstException.type || firstException.value || eventId || '<unknown>';\n }\n return eventId || '<unknown>';\n}\n\n/**\n * Adds exception values, type and value to an synthetic Exception.\n * @param event The event to modify.\n * @param value Value of the exception.\n * @param type Type of the exception.\n * @hidden\n */\nfunction addExceptionTypeValue(event, value, type) {\n const exception = (event.exception = event.exception || {});\n const values = (exception.values = exception.values || []);\n const firstException = (values[0] = values[0] || {});\n if (!firstException.value) {\n firstException.value = value || '';\n }\n if (!firstException.type) {\n firstException.type = type || 'Error';\n }\n}\n\n/**\n * Adds exception mechanism data to a given event. Uses defaults if the second parameter is not passed.\n *\n * @param event The event to modify.\n * @param newMechanism Mechanism data to add to the event.\n * @hidden\n */\nfunction addExceptionMechanism(event, newMechanism) {\n const firstException = getFirstException(event);\n if (!firstException) {\n return;\n }\n\n const defaultMechanism = { type: 'generic', handled: true };\n const currentMechanism = firstException.mechanism;\n firstException.mechanism = { ...defaultMechanism, ...currentMechanism, ...newMechanism };\n\n if (newMechanism && 'data' in newMechanism) {\n const mergedData = { ...(currentMechanism && currentMechanism.data), ...newMechanism.data };\n firstException.mechanism.data = mergedData;\n }\n}\n\n// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string\nconst SEMVER_REGEXP =\n /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$/;\n\n/**\n * Represents Semantic Versioning object\n */\n\n/**\n * Parses input into a SemVer interface\n * @param input string representation of a semver version\n */\nfunction parseSemver(input) {\n const match = input.match(SEMVER_REGEXP) || [];\n const major = parseInt(match[1], 10);\n const minor = parseInt(match[2], 10);\n const patch = parseInt(match[3], 10);\n return {\n buildmetadata: match[5],\n major: isNaN(major) ? undefined : major,\n minor: isNaN(minor) ? undefined : minor,\n patch: isNaN(patch) ? undefined : patch,\n prerelease: match[4],\n };\n}\n\n/**\n * This function adds context (pre/post/line) lines to the provided frame\n *\n * @param lines string[] containing all lines\n * @param frame StackFrame that will be mutated\n * @param linesOfContext number of context lines we want to add pre/post\n */\nfunction addContextToFrame(lines, frame, linesOfContext = 5) {\n // When there is no line number in the frame, attaching context is nonsensical and will even break grouping\n if (frame.lineno === undefined) {\n return;\n }\n\n const maxLines = lines.length;\n const sourceLine = Math.max(Math.min(maxLines - 1, frame.lineno - 1), 0);\n\n frame.pre_context = lines\n .slice(Math.max(0, sourceLine - linesOfContext), sourceLine)\n .map((line) => snipLine(line, 0));\n\n frame.context_line = snipLine(lines[Math.min(maxLines - 1, sourceLine)], frame.colno || 0);\n\n frame.post_context = lines\n .slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext)\n .map((line) => snipLine(line, 0));\n}\n\n/**\n * Checks whether or not we've already captured the given exception (note: not an identical exception - the very object\n * in question), and marks it captured if not.\n *\n * This is useful because it's possible for an error to get captured by more than one mechanism. After we intercept and\n * record an error, we rethrow it (assuming we've intercepted it before it's reached the top-level global handlers), so\n * that we don't interfere with whatever effects the error might have had were the SDK not there. At that point, because\n * the error has been rethrown, it's possible for it to bubble up to some other code we've instrumented. If it's not\n * caught after that, it will bubble all the way up to the global handlers (which of course we also instrument). This\n * function helps us ensure that even if we encounter the same error more than once, we only record it the first time we\n * see it.\n *\n * Note: It will ignore primitives (always return `false` and not mark them as seen), as properties can't be set on\n * them. {@link: Object.objectify} can be used on exceptions to convert any that are primitives into their equivalent\n * object wrapper forms so that this check will always work. However, because we need to flag the exact object which\n * will get rethrown, and because that rethrowing happens outside of the event processing pipeline, the objectification\n * must be done before the exception captured.\n *\n * @param A thrown exception to check or flag as having been seen\n * @returns `true` if the exception has already been captured, `false` if not (with the side effect of marking it seen)\n */\nfunction checkOrSetAlreadyCaught(exception) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (exception && (exception ).__sentry_captured__) {\n return true;\n }\n\n try {\n // set it this way rather than by assignment so that it's not ennumerable and therefore isn't recorded by the\n // `ExtraErrorData` integration\n addNonEnumerableProperty(exception , '__sentry_captured__', true);\n } catch (err) {\n // `exception` is a primitive, so we can't mark it seen\n }\n\n return false;\n}\n\n/**\n * Checks whether the given input is already an array, and if it isn't, wraps it in one.\n *\n * @param maybeArray Input to turn into an array, if necessary\n * @returns The input, if already an array, or an array with the input as the only element, if not\n */\nfunction arrayify(maybeArray) {\n return Array.isArray(maybeArray) ? maybeArray : [maybeArray];\n}\n\nexport { addContextToFrame, addExceptionMechanism, addExceptionTypeValue, arrayify, checkOrSetAlreadyCaught, getEventDescription, parseSemver, uuid4 };\n//# sourceMappingURL=misc.js.map\n"],"names":["GLOBAL_OBJ","snipLine","addNonEnumerableProperty"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"misc.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/misc.js"],"sourcesContent":["import { addNonEnumerableProperty } from './object.js';\nimport { snipLine } from './string.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/**\n * UUID4 generator\n *\n * @returns string Generated UUID4.\n */\nfunction uuid4() {\n const gbl = GLOBAL_OBJ ;\n const crypto = gbl.crypto || gbl.msCrypto;\n\n let getRandomByte = () => Math.random() * 16;\n try {\n if (crypto && crypto.randomUUID) {\n return crypto.randomUUID().replace(/-/g, '');\n }\n if (crypto && crypto.getRandomValues) {\n getRandomByte = () => {\n // crypto.getRandomValues might return undefined instead of the typed array\n // in old Chromium versions (e.g. 23.0.1235.0 (151422))\n // However, `typedArray` is still filled in-place.\n // @see https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues#typedarray\n const typedArray = new Uint8Array(1);\n crypto.getRandomValues(typedArray);\n return typedArray[0];\n };\n }\n } catch (_) {\n // some runtimes can crash invoking crypto\n // https://github.com/getsentry/sentry-javascript/issues/8935\n }\n\n // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/2117523#2117523\n // Concatenating the following numbers as strings results in '10000000100040008000100000000000'\n return (([1e7] ) + 1e3 + 4e3 + 8e3 + 1e11).replace(/[018]/g, c =>\n // eslint-disable-next-line no-bitwise\n ((c ) ^ ((getRandomByte() & 15) >> ((c ) / 4))).toString(16),\n );\n}\n\nfunction getFirstException(event) {\n return event.exception && event.exception.values ? event.exception.values[0] : undefined;\n}\n\n/**\n * Extracts either message or type+value from an event that can be used for user-facing logs\n * @returns event's description\n */\nfunction getEventDescription(event) {\n const { message, event_id: eventId } = event;\n if (message) {\n return message;\n }\n\n const firstException = getFirstException(event);\n if (firstException) {\n if (firstException.type && firstException.value) {\n return `${firstException.type}: ${firstException.value}`;\n }\n return firstException.type || firstException.value || eventId || '<unknown>';\n }\n return eventId || '<unknown>';\n}\n\n/**\n * Adds exception values, type and value to an synthetic Exception.\n * @param event The event to modify.\n * @param value Value of the exception.\n * @param type Type of the exception.\n * @hidden\n */\nfunction addExceptionTypeValue(event, value, type) {\n const exception = (event.exception = event.exception || {});\n const values = (exception.values = exception.values || []);\n const firstException = (values[0] = values[0] || {});\n if (!firstException.value) {\n firstException.value = value || '';\n }\n if (!firstException.type) {\n firstException.type = type || 'Error';\n }\n}\n\n/**\n * Adds exception mechanism data to a given event. Uses defaults if the second parameter is not passed.\n *\n * @param event The event to modify.\n * @param newMechanism Mechanism data to add to the event.\n * @hidden\n */\nfunction addExceptionMechanism(event, newMechanism) {\n const firstException = getFirstException(event);\n if (!firstException) {\n return;\n }\n\n const defaultMechanism = { type: 'generic', handled: true };\n const currentMechanism = firstException.mechanism;\n firstException.mechanism = { ...defaultMechanism, ...currentMechanism, ...newMechanism };\n\n if (newMechanism && 'data' in newMechanism) {\n const mergedData = { ...(currentMechanism && currentMechanism.data), ...newMechanism.data };\n firstException.mechanism.data = mergedData;\n }\n}\n\n// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string\nconst SEMVER_REGEXP =\n /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$/;\n\n/**\n * Represents Semantic Versioning object\n */\n\n/**\n * Parses input into a SemVer interface\n * @param input string representation of a semver version\n */\nfunction parseSemver(input) {\n const match = input.match(SEMVER_REGEXP) || [];\n const major = parseInt(match[1], 10);\n const minor = parseInt(match[2], 10);\n const patch = parseInt(match[3], 10);\n return {\n buildmetadata: match[5],\n major: isNaN(major) ? undefined : major,\n minor: isNaN(minor) ? undefined : minor,\n patch: isNaN(patch) ? undefined : patch,\n prerelease: match[4],\n };\n}\n\n/**\n * This function adds context (pre/post/line) lines to the provided frame\n *\n * @param lines string[] containing all lines\n * @param frame StackFrame that will be mutated\n * @param linesOfContext number of context lines we want to add pre/post\n */\nfunction addContextToFrame(lines, frame, linesOfContext = 5) {\n // When there is no line number in the frame, attaching context is nonsensical and will even break grouping\n if (frame.lineno === undefined) {\n return;\n }\n\n const maxLines = lines.length;\n const sourceLine = Math.max(Math.min(maxLines - 1, frame.lineno - 1), 0);\n\n frame.pre_context = lines\n .slice(Math.max(0, sourceLine - linesOfContext), sourceLine)\n .map((line) => snipLine(line, 0));\n\n frame.context_line = snipLine(lines[Math.min(maxLines - 1, sourceLine)], frame.colno || 0);\n\n frame.post_context = lines\n .slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext)\n .map((line) => snipLine(line, 0));\n}\n\n/**\n * Checks whether or not we've already captured the given exception (note: not an identical exception - the very object\n * in question), and marks it captured if not.\n *\n * This is useful because it's possible for an error to get captured by more than one mechanism. After we intercept and\n * record an error, we rethrow it (assuming we've intercepted it before it's reached the top-level global handlers), so\n * that we don't interfere with whatever effects the error might have had were the SDK not there. At that point, because\n * the error has been rethrown, it's possible for it to bubble up to some other code we've instrumented. If it's not\n * caught after that, it will bubble all the way up to the global handlers (which of course we also instrument). This\n * function helps us ensure that even if we encounter the same error more than once, we only record it the first time we\n * see it.\n *\n * Note: It will ignore primitives (always return `false` and not mark them as seen), as properties can't be set on\n * them. {@link: Object.objectify} can be used on exceptions to convert any that are primitives into their equivalent\n * object wrapper forms so that this check will always work. However, because we need to flag the exact object which\n * will get rethrown, and because that rethrowing happens outside of the event processing pipeline, the objectification\n * must be done before the exception captured.\n *\n * @param A thrown exception to check or flag as having been seen\n * @returns `true` if the exception has already been captured, `false` if not (with the side effect of marking it seen)\n */\nfunction checkOrSetAlreadyCaught(exception) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (exception && (exception ).__sentry_captured__) {\n return true;\n }\n\n try {\n // set it this way rather than by assignment so that it's not ennumerable and therefore isn't recorded by the\n // `ExtraErrorData` integration\n addNonEnumerableProperty(exception , '__sentry_captured__', true);\n } catch (err) {\n // `exception` is a primitive, so we can't mark it seen\n }\n\n return false;\n}\n\n/**\n * Checks whether the given input is already an array, and if it isn't, wraps it in one.\n *\n * @param maybeArray Input to turn into an array, if necessary\n * @returns The input, if already an array, or an array with the input as the only element, if not\n */\nfunction arrayify(maybeArray) {\n return Array.isArray(maybeArray) ? maybeArray : [maybeArray];\n}\n\nexport { addContextToFrame, addExceptionMechanism, addExceptionTypeValue, arrayify, checkOrSetAlreadyCaught, getEventDescription, parseSemver, uuid4 };\n//# sourceMappingURL=misc.js.map\n"],"names":["GLOBAL_OBJ","snipLine","addNonEnumerableProperty"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"misc.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/misc.js"],"sourcesContent":["import { addNonEnumerableProperty } from './object.js';\nimport { snipLine } from './string.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/**\n * UUID4 generator\n *\n * @returns string Generated UUID4.\n */\nfunction uuid4() {\n const gbl = GLOBAL_OBJ ;\n const crypto = gbl.crypto || gbl.msCrypto;\n\n let getRandomByte = () => Math.random() * 16;\n try {\n if (crypto && crypto.randomUUID) {\n return crypto.randomUUID().replace(/-/g, '');\n }\n if (crypto && crypto.getRandomValues) {\n getRandomByte = () => {\n // crypto.getRandomValues might return undefined instead of the typed array\n // in old Chromium versions (e.g. 23.0.1235.0 (151422))\n // However, `typedArray` is still filled in-place.\n // @see https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues#typedarray\n const typedArray = new Uint8Array(1);\n crypto.getRandomValues(typedArray);\n return typedArray[0];\n };\n }\n } catch (_) {\n // some runtimes can crash invoking crypto\n // https://github.com/getsentry/sentry-javascript/issues/8935\n }\n\n // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/2117523#2117523\n // Concatenating the following numbers as strings results in '10000000100040008000100000000000'\n return (([1e7] ) + 1e3 + 4e3 + 8e3 + 1e11).replace(/[018]/g, c =>\n // eslint-disable-next-line no-bitwise\n ((c ) ^ ((getRandomByte() & 15) >> ((c ) / 4))).toString(16),\n );\n}\n\nfunction getFirstException(event) {\n return event.exception && event.exception.values ? event.exception.values[0] : undefined;\n}\n\n/**\n * Extracts either message or type+value from an event that can be used for user-facing logs\n * @returns event's description\n */\nfunction getEventDescription(event) {\n const { message, event_id: eventId } = event;\n if (message) {\n return message;\n }\n\n const firstException = getFirstException(event);\n if (firstException) {\n if (firstException.type && firstException.value) {\n return `${firstException.type}: ${firstException.value}`;\n }\n return firstException.type || firstException.value || eventId || '<unknown>';\n }\n return eventId || '<unknown>';\n}\n\n/**\n * Adds exception values, type and value to an synthetic Exception.\n * @param event The event to modify.\n * @param value Value of the exception.\n * @param type Type of the exception.\n * @hidden\n */\nfunction addExceptionTypeValue(event, value, type) {\n const exception = (event.exception = event.exception || {});\n const values = (exception.values = exception.values || []);\n const firstException = (values[0] = values[0] || {});\n if (!firstException.value) {\n firstException.value = value || '';\n }\n if (!firstException.type) {\n firstException.type = type || 'Error';\n }\n}\n\n/**\n * Adds exception mechanism data to a given event. Uses defaults if the second parameter is not passed.\n *\n * @param event The event to modify.\n * @param newMechanism Mechanism data to add to the event.\n * @hidden\n */\nfunction addExceptionMechanism(event, newMechanism) {\n const firstException = getFirstException(event);\n if (!firstException) {\n return;\n }\n\n const defaultMechanism = { type: 'generic', handled: true };\n const currentMechanism = firstException.mechanism;\n firstException.mechanism = { ...defaultMechanism, ...currentMechanism, ...newMechanism };\n\n if (newMechanism && 'data' in newMechanism) {\n const mergedData = { ...(currentMechanism && currentMechanism.data), ...newMechanism.data };\n firstException.mechanism.data = mergedData;\n }\n}\n\n// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string\nconst SEMVER_REGEXP =\n /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$/;\n\n/**\n * Represents Semantic Versioning object\n */\n\n/**\n * Parses input into a SemVer interface\n * @param input string representation of a semver version\n */\nfunction parseSemver(input) {\n const match = input.match(SEMVER_REGEXP) || [];\n const major = parseInt(match[1], 10);\n const minor = parseInt(match[2], 10);\n const patch = parseInt(match[3], 10);\n return {\n buildmetadata: match[5],\n major: isNaN(major) ? undefined : major,\n minor: isNaN(minor) ? undefined : minor,\n patch: isNaN(patch) ? undefined : patch,\n prerelease: match[4],\n };\n}\n\n/**\n * This function adds context (pre/post/line) lines to the provided frame\n *\n * @param lines string[] containing all lines\n * @param frame StackFrame that will be mutated\n * @param linesOfContext number of context lines we want to add pre/post\n */\nfunction addContextToFrame(lines, frame, linesOfContext = 5) {\n // When there is no line number in the frame, attaching context is nonsensical and will even break grouping\n if (frame.lineno === undefined) {\n return;\n }\n\n const maxLines = lines.length;\n const sourceLine = Math.max(Math.min(maxLines - 1, frame.lineno - 1), 0);\n\n frame.pre_context = lines\n .slice(Math.max(0, sourceLine - linesOfContext), sourceLine)\n .map((line) => snipLine(line, 0));\n\n frame.context_line = snipLine(lines[Math.min(maxLines - 1, sourceLine)], frame.colno || 0);\n\n frame.post_context = lines\n .slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext)\n .map((line) => snipLine(line, 0));\n}\n\n/**\n * Checks whether or not we've already captured the given exception (note: not an identical exception - the very object\n * in question), and marks it captured if not.\n *\n * This is useful because it's possible for an error to get captured by more than one mechanism. After we intercept and\n * record an error, we rethrow it (assuming we've intercepted it before it's reached the top-level global handlers), so\n * that we don't interfere with whatever effects the error might have had were the SDK not there. At that point, because\n * the error has been rethrown, it's possible for it to bubble up to some other code we've instrumented. If it's not\n * caught after that, it will bubble all the way up to the global handlers (which of course we also instrument). This\n * function helps us ensure that even if we encounter the same error more than once, we only record it the first time we\n * see it.\n *\n * Note: It will ignore primitives (always return `false` and not mark them as seen), as properties can't be set on\n * them. {@link: Object.objectify} can be used on exceptions to convert any that are primitives into their equivalent\n * object wrapper forms so that this check will always work. However, because we need to flag the exact object which\n * will get rethrown, and because that rethrowing happens outside of the event processing pipeline, the objectification\n * must be done before the exception captured.\n *\n * @param A thrown exception to check or flag as having been seen\n * @returns `true` if the exception has already been captured, `false` if not (with the side effect of marking it seen)\n */\nfunction checkOrSetAlreadyCaught(exception) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (exception && (exception ).__sentry_captured__) {\n return true;\n }\n\n try {\n // set it this way rather than by assignment so that it's not ennumerable and therefore isn't recorded by the\n // `ExtraErrorData` integration\n addNonEnumerableProperty(exception , '__sentry_captured__', true);\n } catch (err) {\n // `exception` is a primitive, so we can't mark it seen\n }\n\n return false;\n}\n\n/**\n * Checks whether the given input is already an array, and if it isn't, wraps it in one.\n *\n * @param maybeArray Input to turn into an array, if necessary\n * @returns The input, if already an array, or an array with the input as the only element, if not\n */\nfunction arrayify(maybeArray) {\n return Array.isArray(maybeArray) ? maybeArray : [maybeArray];\n}\n\nexport { addContextToFrame, addExceptionMechanism, addExceptionTypeValue, arrayify, checkOrSetAlreadyCaught, getEventDescription, parseSemver, uuid4 };\n//# sourceMappingURL=misc.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"misc.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/misc.js"],"sourcesContent":["import { addNonEnumerableProperty } from './object.js';\nimport { snipLine } from './string.js';\nimport { GLOBAL_OBJ } from './worldwide.js';\n\n/**\n * UUID4 generator\n *\n * @returns string Generated UUID4.\n */\nfunction uuid4() {\n const gbl = GLOBAL_OBJ ;\n const crypto = gbl.crypto || gbl.msCrypto;\n\n let getRandomByte = () => Math.random() * 16;\n try {\n if (crypto && crypto.randomUUID) {\n return crypto.randomUUID().replace(/-/g, '');\n }\n if (crypto && crypto.getRandomValues) {\n getRandomByte = () => {\n // crypto.getRandomValues might return undefined instead of the typed array\n // in old Chromium versions (e.g. 23.0.1235.0 (151422))\n // However, `typedArray` is still filled in-place.\n // @see https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues#typedarray\n const typedArray = new Uint8Array(1);\n crypto.getRandomValues(typedArray);\n return typedArray[0];\n };\n }\n } catch (_) {\n // some runtimes can crash invoking crypto\n // https://github.com/getsentry/sentry-javascript/issues/8935\n }\n\n // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/2117523#2117523\n // Concatenating the following numbers as strings results in '10000000100040008000100000000000'\n return (([1e7] ) + 1e3 + 4e3 + 8e3 + 1e11).replace(/[018]/g, c =>\n // eslint-disable-next-line no-bitwise\n ((c ) ^ ((getRandomByte() & 15) >> ((c ) / 4))).toString(16),\n );\n}\n\nfunction getFirstException(event) {\n return event.exception && event.exception.values ? event.exception.values[0] : undefined;\n}\n\n/**\n * Extracts either message or type+value from an event that can be used for user-facing logs\n * @returns event's description\n */\nfunction getEventDescription(event) {\n const { message, event_id: eventId } = event;\n if (message) {\n return message;\n }\n\n const firstException = getFirstException(event);\n if (firstException) {\n if (firstException.type && firstException.value) {\n return `${firstException.type}: ${firstException.value}`;\n }\n return firstException.type || firstException.value || eventId || '<unknown>';\n }\n return eventId || '<unknown>';\n}\n\n/**\n * Adds exception values, type and value to an synthetic Exception.\n * @param event The event to modify.\n * @param value Value of the exception.\n * @param type Type of the exception.\n * @hidden\n */\nfunction addExceptionTypeValue(event, value, type) {\n const exception = (event.exception = event.exception || {});\n const values = (exception.values = exception.values || []);\n const firstException = (values[0] = values[0] || {});\n if (!firstException.value) {\n firstException.value = value || '';\n }\n if (!firstException.type) {\n firstException.type = type || 'Error';\n }\n}\n\n/**\n * Adds exception mechanism data to a given event. Uses defaults if the second parameter is not passed.\n *\n * @param event The event to modify.\n * @param newMechanism Mechanism data to add to the event.\n * @hidden\n */\nfunction addExceptionMechanism(event, newMechanism) {\n const firstException = getFirstException(event);\n if (!firstException) {\n return;\n }\n\n const defaultMechanism = { type: 'generic', handled: true };\n const currentMechanism = firstException.mechanism;\n firstException.mechanism = { ...defaultMechanism, ...currentMechanism, ...newMechanism };\n\n if (newMechanism && 'data' in newMechanism) {\n const mergedData = { ...(currentMechanism && currentMechanism.data), ...newMechanism.data };\n firstException.mechanism.data = mergedData;\n }\n}\n\n// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string\nconst SEMVER_REGEXP =\n /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$/;\n\n/**\n * Represents Semantic Versioning object\n */\n\n/**\n * Parses input into a SemVer interface\n * @param input string representation of a semver version\n */\nfunction parseSemver(input) {\n const match = input.match(SEMVER_REGEXP) || [];\n const major = parseInt(match[1], 10);\n const minor = parseInt(match[2], 10);\n const patch = parseInt(match[3], 10);\n return {\n buildmetadata: match[5],\n major: isNaN(major) ? undefined : major,\n minor: isNaN(minor) ? undefined : minor,\n patch: isNaN(patch) ? undefined : patch,\n prerelease: match[4],\n };\n}\n\n/**\n * This function adds context (pre/post/line) lines to the provided frame\n *\n * @param lines string[] containing all lines\n * @param frame StackFrame that will be mutated\n * @param linesOfContext number of context lines we want to add pre/post\n */\nfunction addContextToFrame(lines, frame, linesOfContext = 5) {\n // When there is no line number in the frame, attaching context is nonsensical and will even break grouping\n if (frame.lineno === undefined) {\n return;\n }\n\n const maxLines = lines.length;\n const sourceLine = Math.max(Math.min(maxLines - 1, frame.lineno - 1), 0);\n\n frame.pre_context = lines\n .slice(Math.max(0, sourceLine - linesOfContext), sourceLine)\n .map((line) => snipLine(line, 0));\n\n frame.context_line = snipLine(lines[Math.min(maxLines - 1, sourceLine)], frame.colno || 0);\n\n frame.post_context = lines\n .slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext)\n .map((line) => snipLine(line, 0));\n}\n\n/**\n * Checks whether or not we've already captured the given exception (note: not an identical exception - the very object\n * in question), and marks it captured if not.\n *\n * This is useful because it's possible for an error to get captured by more than one mechanism. After we intercept and\n * record an error, we rethrow it (assuming we've intercepted it before it's reached the top-level global handlers), so\n * that we don't interfere with whatever effects the error might have had were the SDK not there. At that point, because\n * the error has been rethrown, it's possible for it to bubble up to some other code we've instrumented. If it's not\n * caught after that, it will bubble all the way up to the global handlers (which of course we also instrument). This\n * function helps us ensure that even if we encounter the same error more than once, we only record it the first time we\n * see it.\n *\n * Note: It will ignore primitives (always return `false` and not mark them as seen), as properties can't be set on\n * them. {@link: Object.objectify} can be used on exceptions to convert any that are primitives into their equivalent\n * object wrapper forms so that this check will always work. However, because we need to flag the exact object which\n * will get rethrown, and because that rethrowing happens outside of the event processing pipeline, the objectification\n * must be done before the exception captured.\n *\n * @param A thrown exception to check or flag as having been seen\n * @returns `true` if the exception has already been captured, `false` if not (with the side effect of marking it seen)\n */\nfunction checkOrSetAlreadyCaught(exception) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (exception && (exception ).__sentry_captured__) {\n return true;\n }\n\n try {\n // set it this way rather than by assignment so that it's not ennumerable and therefore isn't recorded by the\n // `ExtraErrorData` integration\n addNonEnumerableProperty(exception , '__sentry_captured__', true);\n } catch (err) {\n // `exception` is a primitive, so we can't mark it seen\n }\n\n return false;\n}\n\n/**\n * Checks whether the given input is already an array, and if it isn't, wraps it in one.\n *\n * @param maybeArray Input to turn into an array, if necessary\n * @returns The input, if already an array, or an array with the input as the only element, if not\n */\nfunction arrayify(maybeArray) {\n return Array.isArray(maybeArray) ? maybeArray : [maybeArray];\n}\n\nexport { addContextToFrame, addExceptionMechanism, addExceptionTypeValue, arrayify, checkOrSetAlreadyCaught, getEventDescription, parseSemver, uuid4 };\n//# sourceMappingURL=misc.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"node-stack-trace.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/node-stack-trace.js"],"sourcesContent":["/**\n * Does this filename look like it's part of the app code?\n */\nfunction filenameIsInApp(filename, isNative = false) {\n const isInternal =\n isNative ||\n (filename &&\n // It's not internal if it's an absolute linux path\n !filename.startsWith('/') &&\n // It's not internal if it's an absolute windows path\n !filename.match(/^[A-Z]:/) &&\n // It's not internal if the path is starting with a dot\n !filename.startsWith('.') &&\n // It's not internal if the frame has a protocol. In node, this is usually the case if the file got pre-processed with a bundler like webpack\n !filename.match(/^[a-zA-Z]([a-zA-Z0-9.\\-+])*:\\/\\//)); // Schema from: https://stackoverflow.com/a/3641782\n\n // in_app is all that's not an internal Node function or a module within node_modules\n // note that isNative appears to return true even for node core libraries\n // see https://github.com/getsentry/raven-node/issues/176\n\n return !isInternal && filename !== undefined && !filename.includes('node_modules/');\n}\n\n/** Node Stack line parser */\n// eslint-disable-next-line complexity\nfunction node(getModule) {\n const FILENAME_MATCH = /^\\s*[-]{4,}$/;\n const FULL_MATCH = /at (?:async )?(?:(.+?)\\s+\\()?(?:(.+):(\\d+):(\\d+)?|([^)]+))\\)?/;\n\n // eslint-disable-next-line complexity\n return (line) => {\n const lineMatch = line.match(FULL_MATCH);\n\n if (lineMatch) {\n let object;\n let method;\n let functionName;\n let typeName;\n let methodName;\n\n if (lineMatch[1]) {\n functionName = lineMatch[1];\n\n let methodStart = functionName.lastIndexOf('.');\n if (functionName[methodStart - 1] === '.') {\n methodStart--;\n }\n\n if (methodStart > 0) {\n object = functionName.slice(0, methodStart);\n method = functionName.slice(methodStart + 1);\n const objectEnd = object.indexOf('.Module');\n if (objectEnd > 0) {\n functionName = functionName.slice(objectEnd + 1);\n object = object.slice(0, objectEnd);\n }\n }\n typeName = undefined;\n }\n\n if (method) {\n typeName = object;\n methodName = method;\n }\n\n if (method === '<anonymous>') {\n methodName = undefined;\n functionName = undefined;\n }\n\n if (functionName === undefined) {\n methodName = methodName || '<anonymous>';\n functionName = typeName ? `${typeName}.${methodName}` : methodName;\n }\n\n let filename = lineMatch[2] && lineMatch[2].startsWith('file://') ? lineMatch[2].slice(7) : lineMatch[2];\n const isNative = lineMatch[5] === 'native';\n\n // If it's a Windows path, trim the leading slash so that `/C:/foo` becomes `C:/foo`\n if (filename && filename.match(/\\/[A-Z]:/)) {\n filename = filename.slice(1);\n }\n\n if (!filename && lineMatch[5] && !isNative) {\n filename = lineMatch[5];\n }\n\n return {\n filename,\n module: getModule ? getModule(filename) : undefined,\n function: functionName,\n lineno: parseInt(lineMatch[3], 10) || undefined,\n colno: parseInt(lineMatch[4], 10) || undefined,\n in_app: filenameIsInApp(filename, isNative),\n };\n }\n\n if (line.match(FILENAME_MATCH)) {\n return {\n filename: line,\n };\n }\n\n return undefined;\n };\n}\n\nexport { filenameIsInApp, node };\n//# sourceMappingURL=node-stack-trace.js.map\n"],"names":[],"mappings":";;AAGA,SAAS,gBAAgB,UAAU,WAAW,OAAO;AACnD,QAAM,aACJ,YACC;AAAA,EAEC,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,SAAS;AAAA,EAEzB,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,kCAAkC;AAMtD,SAAO,CAAC,cAAc,aAAa,UAAa,CAAC,SAAS,SAAS,eAAe;AACpF;AAIA,SAAS,KAAK,WAAW;AACvB,QAAM,iBAAiB;AACvB,QAAM,aAAa;AAGnB,SAAO,CAAC,SAAS;AACf,UAAM,YAAY,KAAK,MAAM,UAAU;AAEvC,QAAI,WAAW;AACb,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AAEJ,UAAI,UAAU,CAAC,GAAG;AAChB,uBAAe,UAAU,CAAC;AAE1B,YAAI,cAAc,aAAa,YAAY,GAAG;AAC9C,YAAI,aAAa,cAAc,CAAC,MAAM,KAAK;AACzC;AAAA,QACD;AAED,YAAI,cAAc,GAAG;AACnB,mBAAS,aAAa,MAAM,GAAG,WAAW;AAC1C,mBAAS,aAAa,MAAM,cAAc,CAAC;AAC3C,gBAAM,YAAY,OAAO,QAAQ,SAAS;AAC1C,cAAI,YAAY,GAAG;AACjB,2BAAe,aAAa,MAAM,YAAY,CAAC;AAC/C,qBAAS,OAAO,MAAM,GAAG,SAAS;AAAA,UACnC;AAAA,QACF;AACD,mBAAW;AAAA,MACZ;AAED,UAAI,QAAQ;AACV,mBAAW;AACX,qBAAa;AAAA,MACd;AAED,UAAI,WAAW,eAAe;AAC5B,qBAAa;AACb,uBAAe;AAAA,MAChB;AAED,UAAI,iBAAiB,QAAW;AAC9B,qBAAa,cAAc;AAC3B,uBAAe,WAAW,GAAG,YAAY,eAAe;AAAA,MACzD;AAED,UAAI,WAAW,UAAU,CAAC,KAAK,UAAU,CAAC,EAAE,WAAW,SAAS,IAAI,UAAU,CAAC,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC;AACvG,YAAM,WAAW,UAAU,CAAC,MAAM;AAGlC,UAAI,YAAY,SAAS,MAAM,UAAU,GAAG;AAC1C,mBAAW,SAAS,MAAM,CAAC;AAAA,MAC5B;AAED,UAAI,CAAC,YAAY,UAAU,CAAC,KAAK,CAAC,UAAU;AAC1C,mBAAW,UAAU,CAAC;AAAA,MACvB;AAED,aAAO;AAAA,QACL;AAAA,QACA,QAAQ,YAAY,UAAU,QAAQ,IAAI;AAAA,QAC1C,UAAU;AAAA,QACV,QAAQ,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACtC,OAAO,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACrC,QAAQ,gBAAgB,UAAU,QAAQ;AAAA,MAClD;AAAA,IACK;AAED,QAAI,KAAK,MAAM,cAAc,GAAG;AAC9B,aAAO;AAAA,QACL,UAAU;AAAA,MAClB;AAAA,IACK;AAED,WAAO;AAAA,EACX;AACA;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"node-stack-trace.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/node-stack-trace.js"],"sourcesContent":["/**\n * Does this filename look like it's part of the app code?\n */\nfunction filenameIsInApp(filename, isNative = false) {\n const isInternal =\n isNative ||\n (filename &&\n // It's not internal if it's an absolute linux path\n !filename.startsWith('/') &&\n // It's not internal if it's an absolute windows path\n !filename.match(/^[A-Z]:/) &&\n // It's not internal if the path is starting with a dot\n !filename.startsWith('.') &&\n // It's not internal if the frame has a protocol. In node, this is usually the case if the file got pre-processed with a bundler like webpack\n !filename.match(/^[a-zA-Z]([a-zA-Z0-9.\\-+])*:\\/\\//)); // Schema from: https://stackoverflow.com/a/3641782\n\n // in_app is all that's not an internal Node function or a module within node_modules\n // note that isNative appears to return true even for node core libraries\n // see https://github.com/getsentry/raven-node/issues/176\n\n return !isInternal && filename !== undefined && !filename.includes('node_modules/');\n}\n\n/** Node Stack line parser */\n// eslint-disable-next-line complexity\nfunction node(getModule) {\n const FILENAME_MATCH = /^\\s*[-]{4,}$/;\n const FULL_MATCH = /at (?:async )?(?:(.+?)\\s+\\()?(?:(.+):(\\d+):(\\d+)?|([^)]+))\\)?/;\n\n // eslint-disable-next-line complexity\n return (line) => {\n const lineMatch = line.match(FULL_MATCH);\n\n if (lineMatch) {\n let object;\n let method;\n let functionName;\n let typeName;\n let methodName;\n\n if (lineMatch[1]) {\n functionName = lineMatch[1];\n\n let methodStart = functionName.lastIndexOf('.');\n if (functionName[methodStart - 1] === '.') {\n methodStart--;\n }\n\n if (methodStart > 0) {\n object = functionName.slice(0, methodStart);\n method = functionName.slice(methodStart + 1);\n const objectEnd = object.indexOf('.Module');\n if (objectEnd > 0) {\n functionName = functionName.slice(objectEnd + 1);\n object = object.slice(0, objectEnd);\n }\n }\n typeName = undefined;\n }\n\n if (method) {\n typeName = object;\n methodName = method;\n }\n\n if (method === '<anonymous>') {\n methodName = undefined;\n functionName = undefined;\n }\n\n if (functionName === undefined) {\n methodName = methodName || '<anonymous>';\n functionName = typeName ? `${typeName}.${methodName}` : methodName;\n }\n\n let filename = lineMatch[2] && lineMatch[2].startsWith('file://') ? lineMatch[2].slice(7) : lineMatch[2];\n const isNative = lineMatch[5] === 'native';\n\n // If it's a Windows path, trim the leading slash so that `/C:/foo` becomes `C:/foo`\n if (filename && filename.match(/\\/[A-Z]:/)) {\n filename = filename.slice(1);\n }\n\n if (!filename && lineMatch[5] && !isNative) {\n filename = lineMatch[5];\n }\n\n return {\n filename,\n module: getModule ? getModule(filename) : undefined,\n function: functionName,\n lineno: parseInt(lineMatch[3], 10) || undefined,\n colno: parseInt(lineMatch[4], 10) || undefined,\n in_app: filenameIsInApp(filename, isNative),\n };\n }\n\n if (line.match(FILENAME_MATCH)) {\n return {\n filename: line,\n };\n }\n\n return undefined;\n };\n}\n\nexport { filenameIsInApp, node };\n//# sourceMappingURL=node-stack-trace.js.map\n"],"names":[],"mappings":";;AAGA,SAAS,gBAAgB,UAAU,WAAW,OAAO;AACnD,QAAM,aACJ,YACC;AAAA,EAEC,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,SAAS;AAAA,EAEzB,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,kCAAkC;AAMtD,SAAO,CAAC,cAAc,aAAa,UAAa,CAAC,SAAS,SAAS,eAAe;AACpF;AAIA,SAAS,KAAK,WAAW;AACvB,QAAM,iBAAiB;AACvB,QAAM,aAAa;AAGnB,SAAO,CAAC,SAAS;AACf,UAAM,YAAY,KAAK,MAAM,UAAU;AAEvC,QAAI,WAAW;AACb,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AAEJ,UAAI,UAAU,CAAC,GAAG;AAChB,uBAAe,UAAU,CAAC;AAE1B,YAAI,cAAc,aAAa,YAAY,GAAG;AAC9C,YAAI,aAAa,cAAc,CAAC,MAAM,KAAK;AACzC;AAAA,QACD;AAED,YAAI,cAAc,GAAG;AACnB,mBAAS,aAAa,MAAM,GAAG,WAAW;AAC1C,mBAAS,aAAa,MAAM,cAAc,CAAC;AAC3C,gBAAM,YAAY,OAAO,QAAQ,SAAS;AAC1C,cAAI,YAAY,GAAG;AACjB,2BAAe,aAAa,MAAM,YAAY,CAAC;AAC/C,qBAAS,OAAO,MAAM,GAAG,SAAS;AAAA,UACnC;AAAA,QACF;AACD,mBAAW;AAAA,MACZ;AAED,UAAI,QAAQ;AACV,mBAAW;AACX,qBAAa;AAAA,MACd;AAED,UAAI,WAAW,eAAe;AAC5B,qBAAa;AACb,uBAAe;AAAA,MAChB;AAED,UAAI,iBAAiB,QAAW;AAC9B,qBAAa,cAAc;AAC3B,uBAAe,WAAW,GAAG,QAAQ,IAAI,UAAU,KAAK;AAAA,MACzD;AAED,UAAI,WAAW,UAAU,CAAC,KAAK,UAAU,CAAC,EAAE,WAAW,SAAS,IAAI,UAAU,CAAC,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC;AACvG,YAAM,WAAW,UAAU,CAAC,MAAM;AAGlC,UAAI,YAAY,SAAS,MAAM,UAAU,GAAG;AAC1C,mBAAW,SAAS,MAAM,CAAC;AAAA,MAC5B;AAED,UAAI,CAAC,YAAY,UAAU,CAAC,KAAK,CAAC,UAAU;AAC1C,mBAAW,UAAU,CAAC;AAAA,MACvB;AAED,aAAO;AAAA,QACL;AAAA,QACA,QAAQ,YAAY,UAAU,QAAQ,IAAI;AAAA,QAC1C,UAAU;AAAA,QACV,QAAQ,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACtC,OAAO,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACrC,QAAQ,gBAAgB,UAAU,QAAQ;AAAA,MAClD;AAAA,IACK;AAED,QAAI,KAAK,MAAM,cAAc,GAAG;AAC9B,aAAO;AAAA,QACL,UAAU;AAAA,MAClB;AAAA,IACK;AAED,WAAO;AAAA,EACX;AACA;;;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"node-stack-trace.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/node-stack-trace.js"],"sourcesContent":["/**\n * Does this filename look like it's part of the app code?\n */\nfunction filenameIsInApp(filename, isNative = false) {\n const isInternal =\n isNative ||\n (filename &&\n // It's not internal if it's an absolute linux path\n !filename.startsWith('/') &&\n // It's not internal if it's an absolute windows path\n !filename.match(/^[A-Z]:/) &&\n // It's not internal if the path is starting with a dot\n !filename.startsWith('.') &&\n // It's not internal if the frame has a protocol. In node, this is usually the case if the file got pre-processed with a bundler like webpack\n !filename.match(/^[a-zA-Z]([a-zA-Z0-9.\\-+])*:\\/\\//)); // Schema from: https://stackoverflow.com/a/3641782\n\n // in_app is all that's not an internal Node function or a module within node_modules\n // note that isNative appears to return true even for node core libraries\n // see https://github.com/getsentry/raven-node/issues/176\n\n return !isInternal && filename !== undefined && !filename.includes('node_modules/');\n}\n\n/** Node Stack line parser */\n// eslint-disable-next-line complexity\nfunction node(getModule) {\n const FILENAME_MATCH = /^\\s*[-]{4,}$/;\n const FULL_MATCH = /at (?:async )?(?:(.+?)\\s+\\()?(?:(.+):(\\d+):(\\d+)?|([^)]+))\\)?/;\n\n // eslint-disable-next-line complexity\n return (line) => {\n const lineMatch = line.match(FULL_MATCH);\n\n if (lineMatch) {\n let object;\n let method;\n let functionName;\n let typeName;\n let methodName;\n\n if (lineMatch[1]) {\n functionName = lineMatch[1];\n\n let methodStart = functionName.lastIndexOf('.');\n if (functionName[methodStart - 1] === '.') {\n methodStart--;\n }\n\n if (methodStart > 0) {\n object = functionName.slice(0, methodStart);\n method = functionName.slice(methodStart + 1);\n const objectEnd = object.indexOf('.Module');\n if (objectEnd > 0) {\n functionName = functionName.slice(objectEnd + 1);\n object = object.slice(0, objectEnd);\n }\n }\n typeName = undefined;\n }\n\n if (method) {\n typeName = object;\n methodName = method;\n }\n\n if (method === '<anonymous>') {\n methodName = undefined;\n functionName = undefined;\n }\n\n if (functionName === undefined) {\n methodName = methodName || '<anonymous>';\n functionName = typeName ? `${typeName}.${methodName}` : methodName;\n }\n\n let filename = lineMatch[2] && lineMatch[2].startsWith('file://') ? lineMatch[2].slice(7) : lineMatch[2];\n const isNative = lineMatch[5] === 'native';\n\n // If it's a Windows path, trim the leading slash so that `/C:/foo` becomes `C:/foo`\n if (filename && filename.match(/\\/[A-Z]:/)) {\n filename = filename.slice(1);\n }\n\n if (!filename && lineMatch[5] && !isNative) {\n filename = lineMatch[5];\n }\n\n return {\n filename,\n module: getModule ? getModule(filename) : undefined,\n function: functionName,\n lineno: parseInt(lineMatch[3], 10) || undefined,\n colno: parseInt(lineMatch[4], 10) || undefined,\n in_app: filenameIsInApp(filename, isNative),\n };\n }\n\n if (line.match(FILENAME_MATCH)) {\n return {\n filename: line,\n };\n }\n\n return undefined;\n };\n}\n\nexport { filenameIsInApp, node };\n//# sourceMappingURL=node-stack-trace.js.map\n"],"names":[],"mappings":"AAGA,SAAS,gBAAgB,UAAU,WAAW,OAAO;AACnD,QAAM,aACJ,YACC;AAAA,EAEC,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,SAAS;AAAA,EAEzB,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,kCAAkC;AAMtD,SAAO,CAAC,cAAc,aAAa,UAAa,CAAC,SAAS,SAAS,eAAe;AACpF;AAIA,SAAS,KAAK,WAAW;AACvB,QAAM,iBAAiB;AACvB,QAAM,aAAa;AAGnB,SAAO,CAAC,SAAS;AACf,UAAM,YAAY,KAAK,MAAM,UAAU;AAEvC,QAAI,WAAW;AACb,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AAEJ,UAAI,UAAU,CAAC,GAAG;AAChB,uBAAe,UAAU,CAAC;AAE1B,YAAI,cAAc,aAAa,YAAY,GAAG;AAC9C,YAAI,aAAa,cAAc,CAAC,MAAM,KAAK;AACzC;AAAA,QACD;AAED,YAAI,cAAc,GAAG;AACnB,mBAAS,aAAa,MAAM,GAAG,WAAW;AAC1C,mBAAS,aAAa,MAAM,cAAc,CAAC;AAC3C,gBAAM,YAAY,OAAO,QAAQ,SAAS;AAC1C,cAAI,YAAY,GAAG;AACjB,2BAAe,aAAa,MAAM,YAAY,CAAC;AAC/C,qBAAS,OAAO,MAAM,GAAG,SAAS;AAAA,UACnC;AAAA,QACF;AACD,mBAAW;AAAA,MACZ;AAED,UAAI,QAAQ;AACV,mBAAW;AACX,qBAAa;AAAA,MACd;AAED,UAAI,WAAW,eAAe;AAC5B,qBAAa;AACb,uBAAe;AAAA,MAChB;AAED,UAAI,iBAAiB,QAAW;AAC9B,qBAAa,cAAc;AAC3B,uBAAe,WAAW,GAAG,YAAY,eAAe;AAAA,MACzD;AAED,UAAI,WAAW,UAAU,CAAC,KAAK,UAAU,CAAC,EAAE,WAAW,SAAS,IAAI,UAAU,CAAC,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC;AACvG,YAAM,WAAW,UAAU,CAAC,MAAM;AAGlC,UAAI,YAAY,SAAS,MAAM,UAAU,GAAG;AAC1C,mBAAW,SAAS,MAAM,CAAC;AAAA,MAC5B;AAED,UAAI,CAAC,YAAY,UAAU,CAAC,KAAK,CAAC,UAAU;AAC1C,mBAAW,UAAU,CAAC;AAAA,MACvB;AAED,aAAO;AAAA,QACL;AAAA,QACA,QAAQ,YAAY,UAAU,QAAQ,IAAI;AAAA,QAC1C,UAAU;AAAA,QACV,QAAQ,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACtC,OAAO,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACrC,QAAQ,gBAAgB,UAAU,QAAQ;AAAA,MAClD;AAAA,IACK;AAED,QAAI,KAAK,MAAM,cAAc,GAAG;AAC9B,aAAO;AAAA,QACL,UAAU;AAAA,MAClB;AAAA,IACK;AAED,WAAO;AAAA,EACX;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"node-stack-trace.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/node-stack-trace.js"],"sourcesContent":["/**\n * Does this filename look like it's part of the app code?\n */\nfunction filenameIsInApp(filename, isNative = false) {\n const isInternal =\n isNative ||\n (filename &&\n // It's not internal if it's an absolute linux path\n !filename.startsWith('/') &&\n // It's not internal if it's an absolute windows path\n !filename.match(/^[A-Z]:/) &&\n // It's not internal if the path is starting with a dot\n !filename.startsWith('.') &&\n // It's not internal if the frame has a protocol. In node, this is usually the case if the file got pre-processed with a bundler like webpack\n !filename.match(/^[a-zA-Z]([a-zA-Z0-9.\\-+])*:\\/\\//)); // Schema from: https://stackoverflow.com/a/3641782\n\n // in_app is all that's not an internal Node function or a module within node_modules\n // note that isNative appears to return true even for node core libraries\n // see https://github.com/getsentry/raven-node/issues/176\n\n return !isInternal && filename !== undefined && !filename.includes('node_modules/');\n}\n\n/** Node Stack line parser */\n// eslint-disable-next-line complexity\nfunction node(getModule) {\n const FILENAME_MATCH = /^\\s*[-]{4,}$/;\n const FULL_MATCH = /at (?:async )?(?:(.+?)\\s+\\()?(?:(.+):(\\d+):(\\d+)?|([^)]+))\\)?/;\n\n // eslint-disable-next-line complexity\n return (line) => {\n const lineMatch = line.match(FULL_MATCH);\n\n if (lineMatch) {\n let object;\n let method;\n let functionName;\n let typeName;\n let methodName;\n\n if (lineMatch[1]) {\n functionName = lineMatch[1];\n\n let methodStart = functionName.lastIndexOf('.');\n if (functionName[methodStart - 1] === '.') {\n methodStart--;\n }\n\n if (methodStart > 0) {\n object = functionName.slice(0, methodStart);\n method = functionName.slice(methodStart + 1);\n const objectEnd = object.indexOf('.Module');\n if (objectEnd > 0) {\n functionName = functionName.slice(objectEnd + 1);\n object = object.slice(0, objectEnd);\n }\n }\n typeName = undefined;\n }\n\n if (method) {\n typeName = object;\n methodName = method;\n }\n\n if (method === '<anonymous>') {\n methodName = undefined;\n functionName = undefined;\n }\n\n if (functionName === undefined) {\n methodName = methodName || '<anonymous>';\n functionName = typeName ? `${typeName}.${methodName}` : methodName;\n }\n\n let filename = lineMatch[2] && lineMatch[2].startsWith('file://') ? lineMatch[2].slice(7) : lineMatch[2];\n const isNative = lineMatch[5] === 'native';\n\n // If it's a Windows path, trim the leading slash so that `/C:/foo` becomes `C:/foo`\n if (filename && filename.match(/\\/[A-Z]:/)) {\n filename = filename.slice(1);\n }\n\n if (!filename && lineMatch[5] && !isNative) {\n filename = lineMatch[5];\n }\n\n return {\n filename,\n module: getModule ? getModule(filename) : undefined,\n function: functionName,\n lineno: parseInt(lineMatch[3], 10) || undefined,\n colno: parseInt(lineMatch[4], 10) || undefined,\n in_app: filenameIsInApp(filename, isNative),\n };\n }\n\n if (line.match(FILENAME_MATCH)) {\n return {\n filename: line,\n };\n }\n\n return undefined;\n };\n}\n\nexport { filenameIsInApp, node };\n//# sourceMappingURL=node-stack-trace.js.map\n"],"names":[],"mappings":"AAGA,SAAS,gBAAgB,UAAU,WAAW,OAAO;AACnD,QAAM,aACJ,YACC;AAAA,EAEC,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,SAAS;AAAA,EAEzB,CAAC,SAAS,WAAW,GAAG;AAAA,EAExB,CAAC,SAAS,MAAM,kCAAkC;AAMtD,SAAO,CAAC,cAAc,aAAa,UAAa,CAAC,SAAS,SAAS,eAAe;AACpF;AAIA,SAAS,KAAK,WAAW;AACvB,QAAM,iBAAiB;AACvB,QAAM,aAAa;AAGnB,SAAO,CAAC,SAAS;AACf,UAAM,YAAY,KAAK,MAAM,UAAU;AAEvC,QAAI,WAAW;AACb,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AACJ,UAAI;AAEJ,UAAI,UAAU,CAAC,GAAG;AAChB,uBAAe,UAAU,CAAC;AAE1B,YAAI,cAAc,aAAa,YAAY,GAAG;AAC9C,YAAI,aAAa,cAAc,CAAC,MAAM,KAAK;AACzC;AAAA,QACD;AAED,YAAI,cAAc,GAAG;AACnB,mBAAS,aAAa,MAAM,GAAG,WAAW;AAC1C,mBAAS,aAAa,MAAM,cAAc,CAAC;AAC3C,gBAAM,YAAY,OAAO,QAAQ,SAAS;AAC1C,cAAI,YAAY,GAAG;AACjB,2BAAe,aAAa,MAAM,YAAY,CAAC;AAC/C,qBAAS,OAAO,MAAM,GAAG,SAAS;AAAA,UACnC;AAAA,QACF;AACD,mBAAW;AAAA,MACZ;AAED,UAAI,QAAQ;AACV,mBAAW;AACX,qBAAa;AAAA,MACd;AAED,UAAI,WAAW,eAAe;AAC5B,qBAAa;AACb,uBAAe;AAAA,MAChB;AAED,UAAI,iBAAiB,QAAW;AAC9B,qBAAa,cAAc;AAC3B,uBAAe,WAAW,GAAG,QAAQ,IAAI,UAAU,KAAK;AAAA,MACzD;AAED,UAAI,WAAW,UAAU,CAAC,KAAK,UAAU,CAAC,EAAE,WAAW,SAAS,IAAI,UAAU,CAAC,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC;AACvG,YAAM,WAAW,UAAU,CAAC,MAAM;AAGlC,UAAI,YAAY,SAAS,MAAM,UAAU,GAAG;AAC1C,mBAAW,SAAS,MAAM,CAAC;AAAA,MAC5B;AAED,UAAI,CAAC,YAAY,UAAU,CAAC,KAAK,CAAC,UAAU;AAC1C,mBAAW,UAAU,CAAC;AAAA,MACvB;AAED,aAAO;AAAA,QACL;AAAA,QACA,QAAQ,YAAY,UAAU,QAAQ,IAAI;AAAA,QAC1C,UAAU;AAAA,QACV,QAAQ,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACtC,OAAO,SAAS,UAAU,CAAC,GAAG,EAAE,KAAK;AAAA,QACrC,QAAQ,gBAAgB,UAAU,QAAQ;AAAA,MAClD;AAAA,IACK;AAED,QAAI,KAAK,MAAM,cAAc,GAAG;AAC9B,aAAO;AAAA,QACL,UAAU;AAAA,MAClB;AAAA,IACK;AAED,WAAO;AAAA,EACX;AACA;","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/normalize.js"],"sourcesContent":["import { isNaN, isVueViewModel, isSyntheticEvent } from './is.js';\nimport { memoBuilder } from './memo.js';\nimport { convertToPlainObject } from './object.js';\nimport { getFunctionName } from './stacktrace.js';\n\n/**\n * Recursively normalizes the given object.\n *\n * - Creates a copy to prevent original input mutation\n * - Skips non-enumerable properties\n * - When stringifying, calls `toJSON` if implemented\n * - Removes circular references\n * - Translates non-serializable values (`undefined`/`NaN`/functions) to serializable format\n * - Translates known global objects/classes to a string representations\n * - Takes care of `Error` object serialization\n * - Optionally limits depth of final output\n * - Optionally limits number of properties/elements included in any single object/array\n *\n * @param input The object to be normalized.\n * @param depth The max depth to which to normalize the object. (Anything deeper stringified whole.)\n * @param maxProperties The max number of elements or properties to be included in any single array or\n * object in the normallized output.\n * @returns A normalized version of the object, or `\"**non-serializable**\"` if any errors are thrown during normalization.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction normalize(input, depth = 100, maxProperties = +Infinity) {\n try {\n // since we're at the outermost level, we don't provide a key\n return visit('', input, depth, maxProperties);\n } catch (err) {\n return { ERROR: `**non-serializable** (${err})` };\n }\n}\n\n/** JSDoc */\nfunction normalizeToSize(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n object,\n // Default Node.js REPL depth\n depth = 3,\n // 100kB, as 200kB is max payload size, so half sounds reasonable\n maxSize = 100 * 1024,\n) {\n const normalized = normalize(object, depth);\n\n if (jsonSize(normalized) > maxSize) {\n return normalizeToSize(object, depth - 1, maxSize);\n }\n\n return normalized ;\n}\n\n/**\n * Visits a node to perform normalization on it\n *\n * @param key The key corresponding to the given node\n * @param value The node to be visited\n * @param depth Optional number indicating the maximum recursion depth\n * @param maxProperties Optional maximum number of properties/elements included in any single object/array\n * @param memo Optional Memo class handling decycling\n */\nfunction visit(\n key,\n value,\n depth = +Infinity,\n maxProperties = +Infinity,\n memo = memoBuilder(),\n) {\n const [memoize, unmemoize] = memo;\n\n // Get the simple cases out of the way first\n if (\n value == null || // this matches null and undefined -> eqeq not eqeqeq\n (['number', 'boolean', 'string'].includes(typeof value) && !isNaN(value))\n ) {\n return value ;\n }\n\n const stringified = stringifyValue(key, value);\n\n // Anything we could potentially dig into more (objects or arrays) will have come back as `\"[object XXXX]\"`.\n // Everything else will have already been serialized, so if we don't see that pattern, we're done.\n if (!stringified.startsWith('[object ')) {\n return stringified;\n }\n\n // From here on, we can assert that `value` is either an object or an array.\n\n // Do not normalize objects that we know have already been normalized. As a general rule, the\n // \"__sentry_skip_normalization__\" property should only be used sparingly and only should only be set on objects that\n // have already been normalized.\n if ((value )['__sentry_skip_normalization__']) {\n return value ;\n }\n\n // We can set `__sentry_override_normalization_depth__` on an object to ensure that from there\n // We keep a certain amount of depth.\n // This should be used sparingly, e.g. we use it for the redux integration to ensure we get a certain amount of state.\n const remainingDepth =\n typeof (value )['__sentry_override_normalization_depth__'] === 'number'\n ? ((value )['__sentry_override_normalization_depth__'] )\n : depth;\n\n // We're also done if we've reached the max depth\n if (remainingDepth === 0) {\n // At this point we know `serialized` is a string of the form `\"[object XXXX]\"`. Clean it up so it's just `\"[XXXX]\"`.\n return stringified.replace('object ', '');\n }\n\n // If we've already visited this branch, bail out, as it's circular reference. If not, note that we're seeing it now.\n if (memoize(value)) {\n return '[Circular ~]';\n }\n\n // If the value has a `toJSON` method, we call it to extract more information\n const valueWithToJSON = value ;\n if (valueWithToJSON && typeof valueWithToJSON.toJSON === 'function') {\n try {\n const jsonValue = valueWithToJSON.toJSON();\n // We need to normalize the return value of `.toJSON()` in case it has circular references\n return visit('', jsonValue, remainingDepth - 1, maxProperties, memo);\n } catch (err) {\n // pass (The built-in `toJSON` failed, but we can still try to do it ourselves)\n }\n }\n\n // At this point we know we either have an object or an array, we haven't seen it before, and we're going to recurse\n // because we haven't yet reached the max depth. Create an accumulator to hold the results of visiting each\n // property/entry, and keep track of the number of items we add to it.\n const normalized = (Array.isArray(value) ? [] : {}) ;\n let numAdded = 0;\n\n // Before we begin, convert`Error` and`Event` instances into plain objects, since some of each of their relevant\n // properties are non-enumerable and otherwise would get missed.\n const visitable = convertToPlainObject(value );\n\n for (const visitKey in visitable) {\n // Avoid iterating over fields in the prototype if they've somehow been exposed to enumeration.\n if (!Object.prototype.hasOwnProperty.call(visitable, visitKey)) {\n continue;\n }\n\n if (numAdded >= maxProperties) {\n normalized[visitKey] = '[MaxProperties ~]';\n break;\n }\n\n // Recursively visit all the child nodes\n const visitValue = visitable[visitKey];\n normalized[visitKey] = visit(visitKey, visitValue, remainingDepth - 1, maxProperties, memo);\n\n numAdded++;\n }\n\n // Once we've visited all the branches, remove the parent from memo storage\n unmemoize(value);\n\n // Return accumulated values\n return normalized;\n}\n\n/* eslint-disable complexity */\n/**\n * Stringify the given value. Handles various known special values and types.\n *\n * Not meant to be used on simple primitives which already have a string representation, as it will, for example, turn\n * the number 1231 into \"[Object Number]\", nor on `null`, as it will throw.\n *\n * @param value The value to stringify\n * @returns A stringified representation of the given value\n */\nfunction stringifyValue(\n key,\n // this type is a tiny bit of a cheat, since this function does handle NaN (which is technically a number), but for\n // our internal use, it'll do\n value,\n) {\n try {\n if (key === 'domain' && value && typeof value === 'object' && (value )._events) {\n return '[Domain]';\n }\n\n if (key === 'domainEmitter') {\n return '[DomainEmitter]';\n }\n\n // It's safe to use `global`, `window`, and `document` here in this manner, as we are asserting using `typeof` first\n // which won't throw if they are not present.\n\n if (typeof global !== 'undefined' && value === global) {\n return '[Global]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof window !== 'undefined' && value === window) {\n return '[Window]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof document !== 'undefined' && value === document) {\n return '[Document]';\n }\n\n if (isVueViewModel(value)) {\n return '[VueViewModel]';\n }\n\n // React's SyntheticEvent thingy\n if (isSyntheticEvent(value)) {\n return '[SyntheticEvent]';\n }\n\n if (typeof value === 'number' && value !== value) {\n return '[NaN]';\n }\n\n if (typeof value === 'function') {\n return `[Function: ${getFunctionName(value)}]`;\n }\n\n if (typeof value === 'symbol') {\n return `[${String(value)}]`;\n }\n\n // stringified BigInts are indistinguishable from regular numbers, so we need to label them to avoid confusion\n if (typeof value === 'bigint') {\n return `[BigInt: ${String(value)}]`;\n }\n\n // Now that we've knocked out all the special cases and the primitives, all we have left are objects. Simply casting\n // them to strings means that instances of classes which haven't defined their `toStringTag` will just come out as\n // `\"[object Object]\"`. If we instead look at the constructor's name (which is the same as the name of the class),\n // we can make sure that only plain objects come out that way.\n const objName = getConstructorName(value);\n\n // Handle HTML Elements\n if (/^HTML(\\w*)Element$/.test(objName)) {\n return `[HTMLElement: ${objName}]`;\n }\n\n return `[object ${objName}]`;\n } catch (err) {\n return `**non-serializable** (${err})`;\n }\n}\n/* eslint-enable complexity */\n\nfunction getConstructorName(value) {\n const prototype = Object.getPrototypeOf(value);\n\n return prototype ? prototype.constructor.name : 'null prototype';\n}\n\n/** Calculates bytes size of input string */\nfunction utf8Length(value) {\n // eslint-disable-next-line no-bitwise\n return ~-encodeURI(value).split(/%..|./).length;\n}\n\n/** Calculates bytes size of input object */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction jsonSize(value) {\n return utf8Length(JSON.stringify(value));\n}\n\n/**\n * Normalizes URLs in exceptions and stacktraces to a base path so Sentry can fingerprint\n * across platforms and working directory.\n *\n * @param url The URL to be normalized.\n * @param basePath The application base path.\n * @returns The normalized URL.\n */\nfunction normalizeUrlToBase(url, basePath) {\n const escapedBase = basePath\n // Backslash to forward\n .replace(/\\\\/g, '/')\n // Escape RegExp special characters\n .replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&');\n\n let newUrl = url;\n try {\n newUrl = decodeURI(url);\n } catch (_Oo) {\n // Sometime this breaks\n }\n return (\n newUrl\n .replace(/\\\\/g, '/')\n .replace(/webpack:\\/?/g, '') // Remove intermediate base path\n // eslint-disable-next-line @sentry-internal/sdk/no-regexp-constructor\n .replace(new RegExp(`(file://)?/*${escapedBase}/*`, 'ig'), 'app:///')\n );\n}\n\nexport { normalize, normalizeToSize, normalizeUrlToBase, visit as walk };\n//# sourceMappingURL=normalize.js.map\n"],"names":["object","memo","memoBuilder","isNaN","convertToPlainObject","isVueViewModel","isSyntheticEvent","getFunctionName"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"normalize.cjs","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/normalize.js"],"sourcesContent":["import { isNaN, isVueViewModel, isSyntheticEvent } from './is.js';\nimport { memoBuilder } from './memo.js';\nimport { convertToPlainObject } from './object.js';\nimport { getFunctionName } from './stacktrace.js';\n\n/**\n * Recursively normalizes the given object.\n *\n * - Creates a copy to prevent original input mutation\n * - Skips non-enumerable properties\n * - When stringifying, calls `toJSON` if implemented\n * - Removes circular references\n * - Translates non-serializable values (`undefined`/`NaN`/functions) to serializable format\n * - Translates known global objects/classes to a string representations\n * - Takes care of `Error` object serialization\n * - Optionally limits depth of final output\n * - Optionally limits number of properties/elements included in any single object/array\n *\n * @param input The object to be normalized.\n * @param depth The max depth to which to normalize the object. (Anything deeper stringified whole.)\n * @param maxProperties The max number of elements or properties to be included in any single array or\n * object in the normallized output.\n * @returns A normalized version of the object, or `\"**non-serializable**\"` if any errors are thrown during normalization.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction normalize(input, depth = 100, maxProperties = +Infinity) {\n try {\n // since we're at the outermost level, we don't provide a key\n return visit('', input, depth, maxProperties);\n } catch (err) {\n return { ERROR: `**non-serializable** (${err})` };\n }\n}\n\n/** JSDoc */\nfunction normalizeToSize(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n object,\n // Default Node.js REPL depth\n depth = 3,\n // 100kB, as 200kB is max payload size, so half sounds reasonable\n maxSize = 100 * 1024,\n) {\n const normalized = normalize(object, depth);\n\n if (jsonSize(normalized) > maxSize) {\n return normalizeToSize(object, depth - 1, maxSize);\n }\n\n return normalized ;\n}\n\n/**\n * Visits a node to perform normalization on it\n *\n * @param key The key corresponding to the given node\n * @param value The node to be visited\n * @param depth Optional number indicating the maximum recursion depth\n * @param maxProperties Optional maximum number of properties/elements included in any single object/array\n * @param memo Optional Memo class handling decycling\n */\nfunction visit(\n key,\n value,\n depth = +Infinity,\n maxProperties = +Infinity,\n memo = memoBuilder(),\n) {\n const [memoize, unmemoize] = memo;\n\n // Get the simple cases out of the way first\n if (\n value == null || // this matches null and undefined -> eqeq not eqeqeq\n (['number', 'boolean', 'string'].includes(typeof value) && !isNaN(value))\n ) {\n return value ;\n }\n\n const stringified = stringifyValue(key, value);\n\n // Anything we could potentially dig into more (objects or arrays) will have come back as `\"[object XXXX]\"`.\n // Everything else will have already been serialized, so if we don't see that pattern, we're done.\n if (!stringified.startsWith('[object ')) {\n return stringified;\n }\n\n // From here on, we can assert that `value` is either an object or an array.\n\n // Do not normalize objects that we know have already been normalized. As a general rule, the\n // \"__sentry_skip_normalization__\" property should only be used sparingly and only should only be set on objects that\n // have already been normalized.\n if ((value )['__sentry_skip_normalization__']) {\n return value ;\n }\n\n // We can set `__sentry_override_normalization_depth__` on an object to ensure that from there\n // We keep a certain amount of depth.\n // This should be used sparingly, e.g. we use it for the redux integration to ensure we get a certain amount of state.\n const remainingDepth =\n typeof (value )['__sentry_override_normalization_depth__'] === 'number'\n ? ((value )['__sentry_override_normalization_depth__'] )\n : depth;\n\n // We're also done if we've reached the max depth\n if (remainingDepth === 0) {\n // At this point we know `serialized` is a string of the form `\"[object XXXX]\"`. Clean it up so it's just `\"[XXXX]\"`.\n return stringified.replace('object ', '');\n }\n\n // If we've already visited this branch, bail out, as it's circular reference. If not, note that we're seeing it now.\n if (memoize(value)) {\n return '[Circular ~]';\n }\n\n // If the value has a `toJSON` method, we call it to extract more information\n const valueWithToJSON = value ;\n if (valueWithToJSON && typeof valueWithToJSON.toJSON === 'function') {\n try {\n const jsonValue = valueWithToJSON.toJSON();\n // We need to normalize the return value of `.toJSON()` in case it has circular references\n return visit('', jsonValue, remainingDepth - 1, maxProperties, memo);\n } catch (err) {\n // pass (The built-in `toJSON` failed, but we can still try to do it ourselves)\n }\n }\n\n // At this point we know we either have an object or an array, we haven't seen it before, and we're going to recurse\n // because we haven't yet reached the max depth. Create an accumulator to hold the results of visiting each\n // property/entry, and keep track of the number of items we add to it.\n const normalized = (Array.isArray(value) ? [] : {}) ;\n let numAdded = 0;\n\n // Before we begin, convert`Error` and`Event` instances into plain objects, since some of each of their relevant\n // properties are non-enumerable and otherwise would get missed.\n const visitable = convertToPlainObject(value );\n\n for (const visitKey in visitable) {\n // Avoid iterating over fields in the prototype if they've somehow been exposed to enumeration.\n if (!Object.prototype.hasOwnProperty.call(visitable, visitKey)) {\n continue;\n }\n\n if (numAdded >= maxProperties) {\n normalized[visitKey] = '[MaxProperties ~]';\n break;\n }\n\n // Recursively visit all the child nodes\n const visitValue = visitable[visitKey];\n normalized[visitKey] = visit(visitKey, visitValue, remainingDepth - 1, maxProperties, memo);\n\n numAdded++;\n }\n\n // Once we've visited all the branches, remove the parent from memo storage\n unmemoize(value);\n\n // Return accumulated values\n return normalized;\n}\n\n/* eslint-disable complexity */\n/**\n * Stringify the given value. Handles various known special values and types.\n *\n * Not meant to be used on simple primitives which already have a string representation, as it will, for example, turn\n * the number 1231 into \"[Object Number]\", nor on `null`, as it will throw.\n *\n * @param value The value to stringify\n * @returns A stringified representation of the given value\n */\nfunction stringifyValue(\n key,\n // this type is a tiny bit of a cheat, since this function does handle NaN (which is technically a number), but for\n // our internal use, it'll do\n value,\n) {\n try {\n if (key === 'domain' && value && typeof value === 'object' && (value )._events) {\n return '[Domain]';\n }\n\n if (key === 'domainEmitter') {\n return '[DomainEmitter]';\n }\n\n // It's safe to use `global`, `window`, and `document` here in this manner, as we are asserting using `typeof` first\n // which won't throw if they are not present.\n\n if (typeof global !== 'undefined' && value === global) {\n return '[Global]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof window !== 'undefined' && value === window) {\n return '[Window]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof document !== 'undefined' && value === document) {\n return '[Document]';\n }\n\n if (isVueViewModel(value)) {\n return '[VueViewModel]';\n }\n\n // React's SyntheticEvent thingy\n if (isSyntheticEvent(value)) {\n return '[SyntheticEvent]';\n }\n\n if (typeof value === 'number' && value !== value) {\n return '[NaN]';\n }\n\n if (typeof value === 'function') {\n return `[Function: ${getFunctionName(value)}]`;\n }\n\n if (typeof value === 'symbol') {\n return `[${String(value)}]`;\n }\n\n // stringified BigInts are indistinguishable from regular numbers, so we need to label them to avoid confusion\n if (typeof value === 'bigint') {\n return `[BigInt: ${String(value)}]`;\n }\n\n // Now that we've knocked out all the special cases and the primitives, all we have left are objects. Simply casting\n // them to strings means that instances of classes which haven't defined their `toStringTag` will just come out as\n // `\"[object Object]\"`. If we instead look at the constructor's name (which is the same as the name of the class),\n // we can make sure that only plain objects come out that way.\n const objName = getConstructorName(value);\n\n // Handle HTML Elements\n if (/^HTML(\\w*)Element$/.test(objName)) {\n return `[HTMLElement: ${objName}]`;\n }\n\n return `[object ${objName}]`;\n } catch (err) {\n return `**non-serializable** (${err})`;\n }\n}\n/* eslint-enable complexity */\n\nfunction getConstructorName(value) {\n const prototype = Object.getPrototypeOf(value);\n\n return prototype ? prototype.constructor.name : 'null prototype';\n}\n\n/** Calculates bytes size of input string */\nfunction utf8Length(value) {\n // eslint-disable-next-line no-bitwise\n return ~-encodeURI(value).split(/%..|./).length;\n}\n\n/** Calculates bytes size of input object */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction jsonSize(value) {\n return utf8Length(JSON.stringify(value));\n}\n\n/**\n * Normalizes URLs in exceptions and stacktraces to a base path so Sentry can fingerprint\n * across platforms and working directory.\n *\n * @param url The URL to be normalized.\n * @param basePath The application base path.\n * @returns The normalized URL.\n */\nfunction normalizeUrlToBase(url, basePath) {\n const escapedBase = basePath\n // Backslash to forward\n .replace(/\\\\/g, '/')\n // Escape RegExp special characters\n .replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&');\n\n let newUrl = url;\n try {\n newUrl = decodeURI(url);\n } catch (_Oo) {\n // Sometime this breaks\n }\n return (\n newUrl\n .replace(/\\\\/g, '/')\n .replace(/webpack:\\/?/g, '') // Remove intermediate base path\n // eslint-disable-next-line @sentry-internal/sdk/no-regexp-constructor\n .replace(new RegExp(`(file://)?/*${escapedBase}/*`, 'ig'), 'app:///')\n );\n}\n\nexport { normalize, normalizeToSize, normalizeUrlToBase, visit as walk };\n//# sourceMappingURL=normalize.js.map\n"],"names":["object","memo","memoBuilder","isNaN","convertToPlainObject","isVueViewModel","isSyntheticEvent","getFunctionName"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/normalize.js"],"sourcesContent":["import { isNaN, isVueViewModel, isSyntheticEvent } from './is.js';\nimport { memoBuilder } from './memo.js';\nimport { convertToPlainObject } from './object.js';\nimport { getFunctionName } from './stacktrace.js';\n\n/**\n * Recursively normalizes the given object.\n *\n * - Creates a copy to prevent original input mutation\n * - Skips non-enumerable properties\n * - When stringifying, calls `toJSON` if implemented\n * - Removes circular references\n * - Translates non-serializable values (`undefined`/`NaN`/functions) to serializable format\n * - Translates known global objects/classes to a string representations\n * - Takes care of `Error` object serialization\n * - Optionally limits depth of final output\n * - Optionally limits number of properties/elements included in any single object/array\n *\n * @param input The object to be normalized.\n * @param depth The max depth to which to normalize the object. (Anything deeper stringified whole.)\n * @param maxProperties The max number of elements or properties to be included in any single array or\n * object in the normallized output.\n * @returns A normalized version of the object, or `\"**non-serializable**\"` if any errors are thrown during normalization.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction normalize(input, depth = 100, maxProperties = +Infinity) {\n try {\n // since we're at the outermost level, we don't provide a key\n return visit('', input, depth, maxProperties);\n } catch (err) {\n return { ERROR: `**non-serializable** (${err})` };\n }\n}\n\n/** JSDoc */\nfunction normalizeToSize(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n object,\n // Default Node.js REPL depth\n depth = 3,\n // 100kB, as 200kB is max payload size, so half sounds reasonable\n maxSize = 100 * 1024,\n) {\n const normalized = normalize(object, depth);\n\n if (jsonSize(normalized) > maxSize) {\n return normalizeToSize(object, depth - 1, maxSize);\n }\n\n return normalized ;\n}\n\n/**\n * Visits a node to perform normalization on it\n *\n * @param key The key corresponding to the given node\n * @param value The node to be visited\n * @param depth Optional number indicating the maximum recursion depth\n * @param maxProperties Optional maximum number of properties/elements included in any single object/array\n * @param memo Optional Memo class handling decycling\n */\nfunction visit(\n key,\n value,\n depth = +Infinity,\n maxProperties = +Infinity,\n memo = memoBuilder(),\n) {\n const [memoize, unmemoize] = memo;\n\n // Get the simple cases out of the way first\n if (\n value == null || // this matches null and undefined -> eqeq not eqeqeq\n (['number', 'boolean', 'string'].includes(typeof value) && !isNaN(value))\n ) {\n return value ;\n }\n\n const stringified = stringifyValue(key, value);\n\n // Anything we could potentially dig into more (objects or arrays) will have come back as `\"[object XXXX]\"`.\n // Everything else will have already been serialized, so if we don't see that pattern, we're done.\n if (!stringified.startsWith('[object ')) {\n return stringified;\n }\n\n // From here on, we can assert that `value` is either an object or an array.\n\n // Do not normalize objects that we know have already been normalized. As a general rule, the\n // \"__sentry_skip_normalization__\" property should only be used sparingly and only should only be set on objects that\n // have already been normalized.\n if ((value )['__sentry_skip_normalization__']) {\n return value ;\n }\n\n // We can set `__sentry_override_normalization_depth__` on an object to ensure that from there\n // We keep a certain amount of depth.\n // This should be used sparingly, e.g. we use it for the redux integration to ensure we get a certain amount of state.\n const remainingDepth =\n typeof (value )['__sentry_override_normalization_depth__'] === 'number'\n ? ((value )['__sentry_override_normalization_depth__'] )\n : depth;\n\n // We're also done if we've reached the max depth\n if (remainingDepth === 0) {\n // At this point we know `serialized` is a string of the form `\"[object XXXX]\"`. Clean it up so it's just `\"[XXXX]\"`.\n return stringified.replace('object ', '');\n }\n\n // If we've already visited this branch, bail out, as it's circular reference. If not, note that we're seeing it now.\n if (memoize(value)) {\n return '[Circular ~]';\n }\n\n // If the value has a `toJSON` method, we call it to extract more information\n const valueWithToJSON = value ;\n if (valueWithToJSON && typeof valueWithToJSON.toJSON === 'function') {\n try {\n const jsonValue = valueWithToJSON.toJSON();\n // We need to normalize the return value of `.toJSON()` in case it has circular references\n return visit('', jsonValue, remainingDepth - 1, maxProperties, memo);\n } catch (err) {\n // pass (The built-in `toJSON` failed, but we can still try to do it ourselves)\n }\n }\n\n // At this point we know we either have an object or an array, we haven't seen it before, and we're going to recurse\n // because we haven't yet reached the max depth. Create an accumulator to hold the results of visiting each\n // property/entry, and keep track of the number of items we add to it.\n const normalized = (Array.isArray(value) ? [] : {}) ;\n let numAdded = 0;\n\n // Before we begin, convert`Error` and`Event` instances into plain objects, since some of each of their relevant\n // properties are non-enumerable and otherwise would get missed.\n const visitable = convertToPlainObject(value );\n\n for (const visitKey in visitable) {\n // Avoid iterating over fields in the prototype if they've somehow been exposed to enumeration.\n if (!Object.prototype.hasOwnProperty.call(visitable, visitKey)) {\n continue;\n }\n\n if (numAdded >= maxProperties) {\n normalized[visitKey] = '[MaxProperties ~]';\n break;\n }\n\n // Recursively visit all the child nodes\n const visitValue = visitable[visitKey];\n normalized[visitKey] = visit(visitKey, visitValue, remainingDepth - 1, maxProperties, memo);\n\n numAdded++;\n }\n\n // Once we've visited all the branches, remove the parent from memo storage\n unmemoize(value);\n\n // Return accumulated values\n return normalized;\n}\n\n/* eslint-disable complexity */\n/**\n * Stringify the given value. Handles various known special values and types.\n *\n * Not meant to be used on simple primitives which already have a string representation, as it will, for example, turn\n * the number 1231 into \"[Object Number]\", nor on `null`, as it will throw.\n *\n * @param value The value to stringify\n * @returns A stringified representation of the given value\n */\nfunction stringifyValue(\n key,\n // this type is a tiny bit of a cheat, since this function does handle NaN (which is technically a number), but for\n // our internal use, it'll do\n value,\n) {\n try {\n if (key === 'domain' && value && typeof value === 'object' && (value )._events) {\n return '[Domain]';\n }\n\n if (key === 'domainEmitter') {\n return '[DomainEmitter]';\n }\n\n // It's safe to use `global`, `window`, and `document` here in this manner, as we are asserting using `typeof` first\n // which won't throw if they are not present.\n\n if (typeof global !== 'undefined' && value === global) {\n return '[Global]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof window !== 'undefined' && value === window) {\n return '[Window]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof document !== 'undefined' && value === document) {\n return '[Document]';\n }\n\n if (isVueViewModel(value)) {\n return '[VueViewModel]';\n }\n\n // React's SyntheticEvent thingy\n if (isSyntheticEvent(value)) {\n return '[SyntheticEvent]';\n }\n\n if (typeof value === 'number' && value !== value) {\n return '[NaN]';\n }\n\n if (typeof value === 'function') {\n return `[Function: ${getFunctionName(value)}]`;\n }\n\n if (typeof value === 'symbol') {\n return `[${String(value)}]`;\n }\n\n // stringified BigInts are indistinguishable from regular numbers, so we need to label them to avoid confusion\n if (typeof value === 'bigint') {\n return `[BigInt: ${String(value)}]`;\n }\n\n // Now that we've knocked out all the special cases and the primitives, all we have left are objects. Simply casting\n // them to strings means that instances of classes which haven't defined their `toStringTag` will just come out as\n // `\"[object Object]\"`. If we instead look at the constructor's name (which is the same as the name of the class),\n // we can make sure that only plain objects come out that way.\n const objName = getConstructorName(value);\n\n // Handle HTML Elements\n if (/^HTML(\\w*)Element$/.test(objName)) {\n return `[HTMLElement: ${objName}]`;\n }\n\n return `[object ${objName}]`;\n } catch (err) {\n return `**non-serializable** (${err})`;\n }\n}\n/* eslint-enable complexity */\n\nfunction getConstructorName(value) {\n const prototype = Object.getPrototypeOf(value);\n\n return prototype ? prototype.constructor.name : 'null prototype';\n}\n\n/** Calculates bytes size of input string */\nfunction utf8Length(value) {\n // eslint-disable-next-line no-bitwise\n return ~-encodeURI(value).split(/%..|./).length;\n}\n\n/** Calculates bytes size of input object */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction jsonSize(value) {\n return utf8Length(JSON.stringify(value));\n}\n\n/**\n * Normalizes URLs in exceptions and stacktraces to a base path so Sentry can fingerprint\n * across platforms and working directory.\n *\n * @param url The URL to be normalized.\n * @param basePath The application base path.\n * @returns The normalized URL.\n */\nfunction normalizeUrlToBase(url, basePath) {\n const escapedBase = basePath\n // Backslash to forward\n .replace(/\\\\/g, '/')\n // Escape RegExp special characters\n .replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&');\n\n let newUrl = url;\n try {\n newUrl = decodeURI(url);\n } catch (_Oo) {\n // Sometime this breaks\n }\n return (\n newUrl\n .replace(/\\\\/g, '/')\n .replace(/webpack:\\/?/g, '') // Remove intermediate base path\n // eslint-disable-next-line @sentry-internal/sdk/no-regexp-constructor\n .replace(new RegExp(`(file://)?/*${escapedBase}/*`, 'ig'), 'app:///')\n );\n}\n\nexport { normalize, normalizeToSize, normalizeUrlToBase, visit as walk };\n//# sourceMappingURL=normalize.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"normalize.js","sources":["../../../../../../../../../../node_modules/@sentry/node/node_modules/@sentry/utils/esm/normalize.js"],"sourcesContent":["import { isNaN, isVueViewModel, isSyntheticEvent } from './is.js';\nimport { memoBuilder } from './memo.js';\nimport { convertToPlainObject } from './object.js';\nimport { getFunctionName } from './stacktrace.js';\n\n/**\n * Recursively normalizes the given object.\n *\n * - Creates a copy to prevent original input mutation\n * - Skips non-enumerable properties\n * - When stringifying, calls `toJSON` if implemented\n * - Removes circular references\n * - Translates non-serializable values (`undefined`/`NaN`/functions) to serializable format\n * - Translates known global objects/classes to a string representations\n * - Takes care of `Error` object serialization\n * - Optionally limits depth of final output\n * - Optionally limits number of properties/elements included in any single object/array\n *\n * @param input The object to be normalized.\n * @param depth The max depth to which to normalize the object. (Anything deeper stringified whole.)\n * @param maxProperties The max number of elements or properties to be included in any single array or\n * object in the normallized output.\n * @returns A normalized version of the object, or `\"**non-serializable**\"` if any errors are thrown during normalization.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction normalize(input, depth = 100, maxProperties = +Infinity) {\n try {\n // since we're at the outermost level, we don't provide a key\n return visit('', input, depth, maxProperties);\n } catch (err) {\n return { ERROR: `**non-serializable** (${err})` };\n }\n}\n\n/** JSDoc */\nfunction normalizeToSize(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n object,\n // Default Node.js REPL depth\n depth = 3,\n // 100kB, as 200kB is max payload size, so half sounds reasonable\n maxSize = 100 * 1024,\n) {\n const normalized = normalize(object, depth);\n\n if (jsonSize(normalized) > maxSize) {\n return normalizeToSize(object, depth - 1, maxSize);\n }\n\n return normalized ;\n}\n\n/**\n * Visits a node to perform normalization on it\n *\n * @param key The key corresponding to the given node\n * @param value The node to be visited\n * @param depth Optional number indicating the maximum recursion depth\n * @param maxProperties Optional maximum number of properties/elements included in any single object/array\n * @param memo Optional Memo class handling decycling\n */\nfunction visit(\n key,\n value,\n depth = +Infinity,\n maxProperties = +Infinity,\n memo = memoBuilder(),\n) {\n const [memoize, unmemoize] = memo;\n\n // Get the simple cases out of the way first\n if (\n value == null || // this matches null and undefined -> eqeq not eqeqeq\n (['number', 'boolean', 'string'].includes(typeof value) && !isNaN(value))\n ) {\n return value ;\n }\n\n const stringified = stringifyValue(key, value);\n\n // Anything we could potentially dig into more (objects or arrays) will have come back as `\"[object XXXX]\"`.\n // Everything else will have already been serialized, so if we don't see that pattern, we're done.\n if (!stringified.startsWith('[object ')) {\n return stringified;\n }\n\n // From here on, we can assert that `value` is either an object or an array.\n\n // Do not normalize objects that we know have already been normalized. As a general rule, the\n // \"__sentry_skip_normalization__\" property should only be used sparingly and only should only be set on objects that\n // have already been normalized.\n if ((value )['__sentry_skip_normalization__']) {\n return value ;\n }\n\n // We can set `__sentry_override_normalization_depth__` on an object to ensure that from there\n // We keep a certain amount of depth.\n // This should be used sparingly, e.g. we use it for the redux integration to ensure we get a certain amount of state.\n const remainingDepth =\n typeof (value )['__sentry_override_normalization_depth__'] === 'number'\n ? ((value )['__sentry_override_normalization_depth__'] )\n : depth;\n\n // We're also done if we've reached the max depth\n if (remainingDepth === 0) {\n // At this point we know `serialized` is a string of the form `\"[object XXXX]\"`. Clean it up so it's just `\"[XXXX]\"`.\n return stringified.replace('object ', '');\n }\n\n // If we've already visited this branch, bail out, as it's circular reference. If not, note that we're seeing it now.\n if (memoize(value)) {\n return '[Circular ~]';\n }\n\n // If the value has a `toJSON` method, we call it to extract more information\n const valueWithToJSON = value ;\n if (valueWithToJSON && typeof valueWithToJSON.toJSON === 'function') {\n try {\n const jsonValue = valueWithToJSON.toJSON();\n // We need to normalize the return value of `.toJSON()` in case it has circular references\n return visit('', jsonValue, remainingDepth - 1, maxProperties, memo);\n } catch (err) {\n // pass (The built-in `toJSON` failed, but we can still try to do it ourselves)\n }\n }\n\n // At this point we know we either have an object or an array, we haven't seen it before, and we're going to recurse\n // because we haven't yet reached the max depth. Create an accumulator to hold the results of visiting each\n // property/entry, and keep track of the number of items we add to it.\n const normalized = (Array.isArray(value) ? [] : {}) ;\n let numAdded = 0;\n\n // Before we begin, convert`Error` and`Event` instances into plain objects, since some of each of their relevant\n // properties are non-enumerable and otherwise would get missed.\n const visitable = convertToPlainObject(value );\n\n for (const visitKey in visitable) {\n // Avoid iterating over fields in the prototype if they've somehow been exposed to enumeration.\n if (!Object.prototype.hasOwnProperty.call(visitable, visitKey)) {\n continue;\n }\n\n if (numAdded >= maxProperties) {\n normalized[visitKey] = '[MaxProperties ~]';\n break;\n }\n\n // Recursively visit all the child nodes\n const visitValue = visitable[visitKey];\n normalized[visitKey] = visit(visitKey, visitValue, remainingDepth - 1, maxProperties, memo);\n\n numAdded++;\n }\n\n // Once we've visited all the branches, remove the parent from memo storage\n unmemoize(value);\n\n // Return accumulated values\n return normalized;\n}\n\n/* eslint-disable complexity */\n/**\n * Stringify the given value. Handles various known special values and types.\n *\n * Not meant to be used on simple primitives which already have a string representation, as it will, for example, turn\n * the number 1231 into \"[Object Number]\", nor on `null`, as it will throw.\n *\n * @param value The value to stringify\n * @returns A stringified representation of the given value\n */\nfunction stringifyValue(\n key,\n // this type is a tiny bit of a cheat, since this function does handle NaN (which is technically a number), but for\n // our internal use, it'll do\n value,\n) {\n try {\n if (key === 'domain' && value && typeof value === 'object' && (value )._events) {\n return '[Domain]';\n }\n\n if (key === 'domainEmitter') {\n return '[DomainEmitter]';\n }\n\n // It's safe to use `global`, `window`, and `document` here in this manner, as we are asserting using `typeof` first\n // which won't throw if they are not present.\n\n if (typeof global !== 'undefined' && value === global) {\n return '[Global]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof window !== 'undefined' && value === window) {\n return '[Window]';\n }\n\n // eslint-disable-next-line no-restricted-globals\n if (typeof document !== 'undefined' && value === document) {\n return '[Document]';\n }\n\n if (isVueViewModel(value)) {\n return '[VueViewModel]';\n }\n\n // React's SyntheticEvent thingy\n if (isSyntheticEvent(value)) {\n return '[SyntheticEvent]';\n }\n\n if (typeof value === 'number' && value !== value) {\n return '[NaN]';\n }\n\n if (typeof value === 'function') {\n return `[Function: ${getFunctionName(value)}]`;\n }\n\n if (typeof value === 'symbol') {\n return `[${String(value)}]`;\n }\n\n // stringified BigInts are indistinguishable from regular numbers, so we need to label them to avoid confusion\n if (typeof value === 'bigint') {\n return `[BigInt: ${String(value)}]`;\n }\n\n // Now that we've knocked out all the special cases and the primitives, all we have left are objects. Simply casting\n // them to strings means that instances of classes which haven't defined their `toStringTag` will just come out as\n // `\"[object Object]\"`. If we instead look at the constructor's name (which is the same as the name of the class),\n // we can make sure that only plain objects come out that way.\n const objName = getConstructorName(value);\n\n // Handle HTML Elements\n if (/^HTML(\\w*)Element$/.test(objName)) {\n return `[HTMLElement: ${objName}]`;\n }\n\n return `[object ${objName}]`;\n } catch (err) {\n return `**non-serializable** (${err})`;\n }\n}\n/* eslint-enable complexity */\n\nfunction getConstructorName(value) {\n const prototype = Object.getPrototypeOf(value);\n\n return prototype ? prototype.constructor.name : 'null prototype';\n}\n\n/** Calculates bytes size of input string */\nfunction utf8Length(value) {\n // eslint-disable-next-line no-bitwise\n return ~-encodeURI(value).split(/%..|./).length;\n}\n\n/** Calculates bytes size of input object */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction jsonSize(value) {\n return utf8Length(JSON.stringify(value));\n}\n\n/**\n * Normalizes URLs in exceptions and stacktraces to a base path so Sentry can fingerprint\n * across platforms and working directory.\n *\n * @param url The URL to be normalized.\n * @param basePath The application base path.\n * @returns The normalized URL.\n */\nfunction normalizeUrlToBase(url, basePath) {\n const escapedBase = basePath\n // Backslash to forward\n .replace(/\\\\/g, '/')\n // Escape RegExp special characters\n .replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&');\n\n let newUrl = url;\n try {\n newUrl = decodeURI(url);\n } catch (_Oo) {\n // Sometime this breaks\n }\n return (\n newUrl\n .replace(/\\\\/g, '/')\n .replace(/webpack:\\/?/g, '') // Remove intermediate base path\n // eslint-disable-next-line @sentry-internal/sdk/no-regexp-constructor\n .replace(new RegExp(`(file://)?/*${escapedBase}/*`, 'ig'), 'app:///')\n );\n}\n\nexport { normalize, normalizeToSize, normalizeUrlToBase, visit as walk };\n//# sourceMappingURL=normalize.js.map\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}