@spotlightjs/spotlight 4.6.0 → 4.7.1

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 (665) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +9 -0
  2. package/dist/_virtual/_commonjsHelpers.js.map +1 -1
  3. package/dist/_virtual/_sentry-release-injection-file.js +11 -0
  4. package/dist/_virtual/_sentry-release-injection-file.js.map +1 -0
  5. package/dist/_virtual/cache.js +8 -0
  6. package/dist/_virtual/cache.js.map +1 -1
  7. package/dist/_virtual/index.js +8 -0
  8. package/dist/_virtual/index.js.map +1 -1
  9. package/dist/_virtual/uri.all.js +8 -0
  10. package/dist/_virtual/uri.all.js.map +1 -1
  11. package/dist/instrument.js +9 -0
  12. package/dist/instrument.js.map +1 -1
  13. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js +8 -0
  14. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js.map +1 -1
  15. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js +8 -0
  16. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js.map +1 -1
  17. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +8 -0
  18. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +1 -1
  19. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js +8 -0
  20. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +1 -1
  21. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js +8 -0
  22. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js.map +1 -1
  23. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +8 -0
  24. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +1 -1
  25. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js +8 -0
  26. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js.map +1 -1
  27. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +8 -0
  28. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +1 -1
  29. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js +47 -39
  30. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js.map +1 -1
  31. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js +9 -0
  32. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js.map +1 -1
  33. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js +18 -9
  34. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js.map +1 -1
  35. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js +9 -0
  36. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js.map +1 -1
  37. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js +9 -0
  38. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js.map +1 -1
  39. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js +24 -15
  40. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js.map +1 -1
  41. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js +14 -5
  42. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js.map +1 -1
  43. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js +9 -0
  44. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js.map +1 -1
  45. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js +9 -0
  46. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js.map +1 -1
  47. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/ucs2length.js +9 -0
  48. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/ucs2length.js.map +1 -1
  49. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js +9 -0
  50. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js.map +1 -1
  51. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js +9 -0
  52. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js.map +1 -1
  53. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js +9 -0
  54. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js.map +1 -1
  55. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js +9 -0
  56. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js.map +1 -1
  57. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js +9 -0
  58. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js.map +1 -1
  59. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js +9 -0
  60. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js.map +1 -1
  61. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js +9 -0
  62. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js.map +1 -1
  63. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js +9 -0
  64. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js.map +1 -1
  65. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js +9 -0
  66. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js.map +1 -1
  67. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js +9 -0
  68. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js.map +1 -1
  69. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js +9 -0
  70. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js.map +1 -1
  71. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js +9 -0
  72. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js.map +1 -1
  73. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js +9 -0
  74. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js.map +1 -1
  75. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js +9 -0
  76. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js.map +1 -1
  77. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js +9 -0
  78. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js.map +1 -1
  79. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js +9 -0
  80. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js.map +1 -1
  81. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js +9 -0
  82. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js.map +1 -1
  83. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js +9 -0
  84. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js.map +1 -1
  85. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js +9 -0
  86. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js.map +1 -1
  87. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js +9 -0
  88. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js.map +1 -1
  89. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js +9 -0
  90. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js.map +1 -1
  91. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js +9 -0
  92. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js.map +1 -1
  93. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js +9 -0
  94. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js.map +1 -1
  95. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js +9 -0
  96. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js.map +1 -1
  97. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js +9 -0
  98. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js.map +1 -1
  99. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js +9 -0
  100. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js.map +1 -1
  101. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js +9 -0
  102. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js.map +1 -1
  103. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js +9 -0
  104. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js.map +1 -1
  105. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js +9 -0
  106. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js.map +1 -1
  107. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js +9 -0
  108. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js.map +1 -1
  109. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/data.json.js +8 -0
  110. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/data.json.js.map +1 -1
  111. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/json-schema-draft-07.json.js +8 -0
  112. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/json-schema-draft-07.json.js.map +1 -1
  113. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +9 -0
  114. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js.map +1 -1
  115. package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js +9 -0
  116. package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js.map +1 -1
  117. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/helper/streaming/sse.js +8 -0
  118. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/helper/streaming/sse.js.map +1 -1
  119. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/middleware/cors/index.js +8 -0
  120. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/middleware/cors/index.js.map +1 -1
  121. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/html.js +8 -0
  122. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/html.js.map +1 -1
  123. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/stream.js +8 -0
  124. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/stream.js.map +1 -1
  125. package/dist/node_modules/.pnpm/json-schema-traverse@0.4.1/node_modules/json-schema-traverse/index.js +9 -0
  126. package/dist/node_modules/.pnpm/json-schema-traverse@0.4.1/node_modules/json-schema-traverse/index.js.map +1 -1
  127. package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js +9 -1
  128. package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js.map +1 -1
  129. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js +8 -0
  130. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js.map +1 -1
  131. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js +8 -0
  132. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js.map +1 -1
  133. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +8 -0
  134. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js.map +1 -1
  135. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +8 -0
  136. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js.map +1 -1
  137. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js +8 -0
  138. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js.map +1 -1
  139. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +8 -0
  140. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js.map +1 -1
  141. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +8 -0
  142. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js.map +1 -1
  143. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +8 -0
  144. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js.map +1 -1
  145. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +8 -0
  146. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js.map +1 -1
  147. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +8 -0
  148. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js.map +1 -1
  149. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +8 -0
  150. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js.map +1 -1
  151. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +8 -0
  152. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js.map +1 -1
  153. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +8 -0
  154. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js.map +1 -1
  155. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +8 -0
  156. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js.map +1 -1
  157. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +8 -0
  158. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js.map +1 -1
  159. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +8 -0
  160. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js.map +1 -1
  161. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +8 -0
  162. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js.map +1 -1
  163. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +8 -0
  164. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js.map +1 -1
  165. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +8 -0
  166. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js.map +1 -1
  167. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +8 -0
  168. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js.map +1 -1
  169. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +8 -0
  170. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js.map +1 -1
  171. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +8 -0
  172. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js.map +1 -1
  173. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +8 -0
  174. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js.map +1 -1
  175. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +8 -0
  176. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js.map +1 -1
  177. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +8 -0
  178. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js.map +1 -1
  179. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +8 -0
  180. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js.map +1 -1
  181. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +8 -0
  182. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js.map +1 -1
  183. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +8 -0
  184. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js.map +1 -1
  185. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +8 -0
  186. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js.map +1 -1
  187. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +8 -0
  188. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js.map +1 -1
  189. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +8 -0
  190. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +1 -1
  191. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +8 -0
  192. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js.map +1 -1
  193. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +8 -0
  194. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js.map +1 -1
  195. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +8 -0
  196. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js.map +1 -1
  197. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +8 -0
  198. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js.map +1 -1
  199. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js +8 -0
  200. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js.map +1 -1
  201. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +8 -0
  202. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js.map +1 -1
  203. package/dist/run.js +10 -0
  204. package/dist/run.js.map +1 -1
  205. package/dist/sentry-config.js +12 -2
  206. package/dist/sentry-config.js.map +1 -1
  207. package/dist/server/cli/help.js +17 -0
  208. package/dist/server/cli/help.js.map +1 -1
  209. package/dist/server/cli/mcp.d.ts +1 -1
  210. package/dist/server/cli/mcp.js +21 -9
  211. package/dist/server/cli/mcp.js.map +1 -1
  212. package/dist/server/cli/run.d.ts +1 -1
  213. package/dist/server/cli/run.js +28 -3
  214. package/dist/server/cli/run.js.map +1 -1
  215. package/dist/server/cli/server.d.ts +1 -1
  216. package/dist/server/cli/server.js +12 -2
  217. package/dist/server/cli/server.js.map +1 -1
  218. package/dist/server/cli/tail.d.ts +1 -1
  219. package/dist/server/cli/tail.js +18 -2
  220. package/dist/server/cli/tail.js.map +1 -1
  221. package/dist/server/cli.d.ts +1 -0
  222. package/dist/server/cli.js +30 -4
  223. package/dist/server/cli.js.map +1 -1
  224. package/dist/server/constants.js +9 -0
  225. package/dist/server/constants.js.map +1 -1
  226. package/dist/server/formatters/human/errors.js +9 -0
  227. package/dist/server/formatters/human/errors.js.map +1 -1
  228. package/dist/server/formatters/human/index.js +9 -0
  229. package/dist/server/formatters/human/index.js.map +1 -1
  230. package/dist/server/formatters/human/logs.js +9 -0
  231. package/dist/server/formatters/human/logs.js.map +1 -1
  232. package/dist/server/formatters/human/traces.js +9 -0
  233. package/dist/server/formatters/human/traces.js.map +1 -1
  234. package/dist/server/formatters/human/utils.js +9 -0
  235. package/dist/server/formatters/human/utils.js.map +1 -1
  236. package/dist/server/formatters/index.js +9 -0
  237. package/dist/server/formatters/index.js.map +1 -1
  238. package/dist/server/formatters/json/errors.js +9 -0
  239. package/dist/server/formatters/json/errors.js.map +1 -1
  240. package/dist/server/formatters/json/index.js +9 -0
  241. package/dist/server/formatters/json/index.js.map +1 -1
  242. package/dist/server/formatters/json/logs.js +9 -0
  243. package/dist/server/formatters/json/logs.js.map +1 -1
  244. package/dist/server/formatters/json/traces.js +9 -0
  245. package/dist/server/formatters/json/traces.js.map +1 -1
  246. package/dist/server/formatters/logfmt/errors.js +9 -0
  247. package/dist/server/formatters/logfmt/errors.js.map +1 -1
  248. package/dist/server/formatters/logfmt/index.js +9 -0
  249. package/dist/server/formatters/logfmt/index.js.map +1 -1
  250. package/dist/server/formatters/logfmt/logs.js +9 -0
  251. package/dist/server/formatters/logfmt/logs.js.map +1 -1
  252. package/dist/server/formatters/logfmt/traces.js +9 -0
  253. package/dist/server/formatters/logfmt/traces.js.map +1 -1
  254. package/dist/server/formatters/md/errors.js +9 -0
  255. package/dist/server/formatters/md/errors.js.map +1 -1
  256. package/dist/server/formatters/md/event.js +9 -0
  257. package/dist/server/formatters/md/event.js.map +1 -1
  258. package/dist/server/formatters/md/index.js +9 -0
  259. package/dist/server/formatters/md/index.js.map +1 -1
  260. package/dist/server/formatters/md/logs.js +9 -0
  261. package/dist/server/formatters/md/logs.js.map +1 -1
  262. package/dist/server/formatters/md/traces.js +9 -0
  263. package/dist/server/formatters/md/traces.js.map +1 -1
  264. package/dist/server/formatters/shared/data-builders.js +9 -0
  265. package/dist/server/formatters/shared/data-builders.js.map +1 -1
  266. package/dist/server/formatters/types.js +9 -0
  267. package/dist/server/formatters/types.js.map +1 -1
  268. package/dist/server/formatters/utils.js +9 -0
  269. package/dist/server/formatters/utils.js.map +1 -1
  270. package/dist/server/handlers/fileToServe.js +9 -0
  271. package/dist/server/handlers/fileToServe.js.map +1 -1
  272. package/dist/server/logger.js +9 -0
  273. package/dist/server/logger.js.map +1 -1
  274. package/dist/server/main.d.ts +1 -1
  275. package/dist/server/main.js +22 -4
  276. package/dist/server/main.js.map +1 -1
  277. package/dist/server/mcp/constants.js +9 -0
  278. package/dist/server/mcp/constants.js.map +1 -1
  279. package/dist/server/mcp/mcp.js +13 -1
  280. package/dist/server/mcp/mcp.js.map +1 -1
  281. package/dist/server/messageBuffer.js +9 -0
  282. package/dist/server/messageBuffer.js.map +1 -1
  283. package/dist/server/parser/helpers.js +9 -0
  284. package/dist/server/parser/helpers.js.map +1 -1
  285. package/dist/server/parser/processEnvelope.js +9 -0
  286. package/dist/server/parser/processEnvelope.js.map +1 -1
  287. package/dist/server/routes/clear.js +12 -0
  288. package/dist/server/routes/clear.js.map +1 -1
  289. package/dist/server/routes/contextlines/index.js +9 -0
  290. package/dist/server/routes/contextlines/index.js.map +1 -1
  291. package/dist/server/routes/contextlines/utils.js +9 -0
  292. package/dist/server/routes/contextlines/utils.js.map +1 -1
  293. package/dist/server/routes/health.js +9 -0
  294. package/dist/server/routes/health.js.map +1 -1
  295. package/dist/server/routes/index.js +9 -0
  296. package/dist/server/routes/index.js.map +1 -1
  297. package/dist/server/routes/mcp.js +9 -0
  298. package/dist/server/routes/mcp.js.map +1 -1
  299. package/dist/server/routes/open.js +9 -0
  300. package/dist/server/routes/open.js.map +1 -1
  301. package/dist/server/routes/stream/debugLogging.js +9 -0
  302. package/dist/server/routes/stream/debugLogging.js.map +1 -1
  303. package/dist/server/routes/stream/index.js +18 -3
  304. package/dist/server/routes/stream/index.js.map +1 -1
  305. package/dist/server/routes/stream/streaming.js +9 -0
  306. package/dist/server/routes/stream/streaming.js.map +1 -1
  307. package/dist/server/routes/stream/userAgent.js +9 -0
  308. package/dist/server/routes/stream/userAgent.js.map +1 -1
  309. package/dist/server/sdk.d.ts +1 -1
  310. package/dist/server/sdk.js +9 -0
  311. package/dist/server/sdk.js.map +1 -1
  312. package/dist/server/types/cli.d.ts +1 -0
  313. package/dist/server/types/utils.d.ts +12 -0
  314. package/dist/server/utils/cors.d.ts +35 -5
  315. package/dist/server/utils/cors.js +179 -6
  316. package/dist/server/utils/cors.js.map +1 -1
  317. package/dist/server/utils/docker-compose-parser.js +9 -0
  318. package/dist/server/utils/docker-compose-parser.js.map +1 -1
  319. package/dist/server/utils/docker-compose.js +10 -1
  320. package/dist/server/utils/docker-compose.js.map +1 -1
  321. package/dist/server/utils/eventContainer.js +9 -0
  322. package/dist/server/utils/eventContainer.js.map +1 -1
  323. package/dist/server/utils/extras.js +9 -0
  324. package/dist/server/utils/extras.js.map +1 -1
  325. package/dist/server/utils/getBuffer.js +9 -0
  326. package/dist/server/utils/getBuffer.js.map +1 -1
  327. package/dist/shared/constants.js +9 -0
  328. package/dist/shared/constants.js.map +1 -1
  329. package/dist/ui/assets/andromeeda.js +2 -1
  330. package/dist/ui/assets/andromeeda.js.map +1 -0
  331. package/dist/ui/assets/angular-html.js +2 -1
  332. package/dist/ui/assets/angular-html.js.map +1 -0
  333. package/dist/ui/assets/angular-ts.js +2 -1
  334. package/dist/ui/assets/angular-ts.js.map +1 -0
  335. package/dist/ui/assets/astro.js +2 -1
  336. package/dist/ui/assets/astro.js.map +1 -0
  337. package/dist/ui/assets/aurora-x.js +2 -1
  338. package/dist/ui/assets/aurora-x.js.map +1 -0
  339. package/dist/ui/assets/ayu-dark.js +2 -1
  340. package/dist/ui/assets/ayu-dark.js.map +1 -0
  341. package/dist/ui/assets/blade.js +2 -1
  342. package/dist/ui/assets/blade.js.map +1 -0
  343. package/dist/ui/assets/c.js +2 -1
  344. package/dist/ui/assets/c.js.map +1 -0
  345. package/dist/ui/assets/catppuccin-frappe.js +2 -1
  346. package/dist/ui/assets/catppuccin-frappe.js.map +1 -0
  347. package/dist/ui/assets/catppuccin-latte.js +2 -1
  348. package/dist/ui/assets/catppuccin-latte.js.map +1 -0
  349. package/dist/ui/assets/catppuccin-macchiato.js +2 -1
  350. package/dist/ui/assets/catppuccin-macchiato.js.map +1 -0
  351. package/dist/ui/assets/catppuccin-mocha.js +2 -1
  352. package/dist/ui/assets/catppuccin-mocha.js.map +1 -0
  353. package/dist/ui/assets/coffee.js +2 -1
  354. package/dist/ui/assets/coffee.js.map +1 -0
  355. package/dist/ui/assets/cpp.js +2 -1
  356. package/dist/ui/assets/cpp.js.map +1 -0
  357. package/dist/ui/assets/css.js +2 -1
  358. package/dist/ui/assets/css.js.map +1 -0
  359. package/dist/ui/assets/dark-plus.js +2 -1
  360. package/dist/ui/assets/dark-plus.js.map +1 -0
  361. package/dist/ui/assets/dracula-soft.js +2 -1
  362. package/dist/ui/assets/dracula-soft.js.map +1 -0
  363. package/dist/ui/assets/dracula.js +2 -1
  364. package/dist/ui/assets/dracula.js.map +1 -0
  365. package/dist/ui/assets/everforest-dark.js +2 -1
  366. package/dist/ui/assets/everforest-dark.js.map +1 -0
  367. package/dist/ui/assets/everforest-light.js +2 -1
  368. package/dist/ui/assets/everforest-light.js.map +1 -0
  369. package/dist/ui/assets/github-dark-default.js +2 -1
  370. package/dist/ui/assets/github-dark-default.js.map +1 -0
  371. package/dist/ui/assets/github-dark-dimmed.js +2 -1
  372. package/dist/ui/assets/github-dark-dimmed.js.map +1 -0
  373. package/dist/ui/assets/github-dark-high-contrast.js +2 -1
  374. package/dist/ui/assets/github-dark-high-contrast.js.map +1 -0
  375. package/dist/ui/assets/github-dark.js +2 -1
  376. package/dist/ui/assets/github-dark.js.map +1 -0
  377. package/dist/ui/assets/github-light-default.js +2 -1
  378. package/dist/ui/assets/github-light-default.js.map +1 -0
  379. package/dist/ui/assets/github-light-high-contrast.js +2 -1
  380. package/dist/ui/assets/github-light-high-contrast.js.map +1 -0
  381. package/dist/ui/assets/github-light.js +2 -1
  382. package/dist/ui/assets/github-light.js.map +1 -0
  383. package/dist/ui/assets/glsl.js +2 -1
  384. package/dist/ui/assets/glsl.js.map +1 -0
  385. package/dist/ui/assets/graphql.js +2 -1
  386. package/dist/ui/assets/graphql.js.map +1 -0
  387. package/dist/ui/assets/gruvbox-dark-hard.js +2 -1
  388. package/dist/ui/assets/gruvbox-dark-hard.js.map +1 -0
  389. package/dist/ui/assets/gruvbox-dark-medium.js +2 -1
  390. package/dist/ui/assets/gruvbox-dark-medium.js.map +1 -0
  391. package/dist/ui/assets/gruvbox-dark-soft.js +2 -1
  392. package/dist/ui/assets/gruvbox-dark-soft.js.map +1 -0
  393. package/dist/ui/assets/gruvbox-light-hard.js +2 -1
  394. package/dist/ui/assets/gruvbox-light-hard.js.map +1 -0
  395. package/dist/ui/assets/gruvbox-light-medium.js +2 -1
  396. package/dist/ui/assets/gruvbox-light-medium.js.map +1 -0
  397. package/dist/ui/assets/gruvbox-light-soft.js +2 -1
  398. package/dist/ui/assets/gruvbox-light-soft.js.map +1 -0
  399. package/dist/ui/assets/haml.js +2 -1
  400. package/dist/ui/assets/haml.js.map +1 -0
  401. package/dist/ui/assets/handlebars.js +2 -1
  402. package/dist/ui/assets/handlebars.js.map +1 -0
  403. package/dist/ui/assets/houston.js +2 -1
  404. package/dist/ui/assets/houston.js.map +1 -0
  405. package/dist/ui/assets/html-derivative.js +2 -1
  406. package/dist/ui/assets/html-derivative.js.map +1 -0
  407. package/dist/ui/assets/html.js +2 -1
  408. package/dist/ui/assets/html.js.map +1 -0
  409. package/dist/ui/assets/http.js +2 -1
  410. package/dist/ui/assets/http.js.map +1 -0
  411. package/dist/ui/assets/imba.js +2 -1
  412. package/dist/ui/assets/imba.js.map +1 -0
  413. package/dist/ui/assets/index.js +46 -45
  414. package/dist/ui/assets/index.js.map +1 -0
  415. package/dist/ui/assets/index2.js +2 -1
  416. package/dist/ui/assets/index2.js.map +1 -0
  417. package/dist/ui/assets/instrumentation.js +12 -11
  418. package/dist/ui/assets/instrumentation.js.map +1 -0
  419. package/dist/ui/assets/java.js +2 -1
  420. package/dist/ui/assets/java.js.map +1 -0
  421. package/dist/ui/assets/javascript.js +2 -1
  422. package/dist/ui/assets/javascript.js.map +1 -0
  423. package/dist/ui/assets/jinja.js +2 -1
  424. package/dist/ui/assets/jinja.js.map +1 -0
  425. package/dist/ui/assets/jison.js +2 -1
  426. package/dist/ui/assets/jison.js.map +1 -0
  427. package/dist/ui/assets/json.js +2 -1
  428. package/dist/ui/assets/json.js.map +1 -0
  429. package/dist/ui/assets/json5.js +2 -1
  430. package/dist/ui/assets/json5.js.map +1 -0
  431. package/dist/ui/assets/jsonc.js +2 -1
  432. package/dist/ui/assets/jsonc.js.map +1 -0
  433. package/dist/ui/assets/jsonl.js +2 -1
  434. package/dist/ui/assets/jsonl.js.map +1 -0
  435. package/dist/ui/assets/jsx.js +2 -1
  436. package/dist/ui/assets/jsx.js.map +1 -0
  437. package/dist/ui/assets/julia.js +2 -1
  438. package/dist/ui/assets/julia.js.map +1 -0
  439. package/dist/ui/assets/kanagawa-dragon.js +2 -1
  440. package/dist/ui/assets/kanagawa-dragon.js.map +1 -0
  441. package/dist/ui/assets/kanagawa-lotus.js +2 -1
  442. package/dist/ui/assets/kanagawa-lotus.js.map +1 -0
  443. package/dist/ui/assets/kanagawa-wave.js +2 -1
  444. package/dist/ui/assets/kanagawa-wave.js.map +1 -0
  445. package/dist/ui/assets/laserwave.js +2 -1
  446. package/dist/ui/assets/laserwave.js.map +1 -0
  447. package/dist/ui/assets/less.js +2 -1
  448. package/dist/ui/assets/less.js.map +1 -0
  449. package/dist/ui/assets/light-plus.js +2 -1
  450. package/dist/ui/assets/light-plus.js.map +1 -0
  451. package/dist/ui/assets/main.css +1 -1
  452. package/dist/ui/assets/main.js +3 -2
  453. package/dist/ui/assets/main.js.map +1 -0
  454. package/dist/ui/assets/markdown.js +2 -1
  455. package/dist/ui/assets/markdown.js.map +1 -0
  456. package/dist/ui/assets/marko.js +2 -1
  457. package/dist/ui/assets/marko.js.map +1 -0
  458. package/dist/ui/assets/material-theme-darker.js +2 -1
  459. package/dist/ui/assets/material-theme-darker.js.map +1 -0
  460. package/dist/ui/assets/material-theme-lighter.js +2 -1
  461. package/dist/ui/assets/material-theme-lighter.js.map +1 -0
  462. package/dist/ui/assets/material-theme-ocean.js +2 -1
  463. package/dist/ui/assets/material-theme-ocean.js.map +1 -0
  464. package/dist/ui/assets/material-theme-palenight.js +2 -1
  465. package/dist/ui/assets/material-theme-palenight.js.map +1 -0
  466. package/dist/ui/assets/material-theme.js +2 -1
  467. package/dist/ui/assets/material-theme.js.map +1 -0
  468. package/dist/ui/assets/mdc.js +2 -1
  469. package/dist/ui/assets/mdc.js.map +1 -0
  470. package/dist/ui/assets/mdx.js +2 -1
  471. package/dist/ui/assets/mdx.js.map +1 -0
  472. package/dist/ui/assets/min-dark.js +2 -1
  473. package/dist/ui/assets/min-dark.js.map +1 -0
  474. package/dist/ui/assets/min-light.js +2 -1
  475. package/dist/ui/assets/min-light.js.map +1 -0
  476. package/dist/ui/assets/monokai.js +2 -1
  477. package/dist/ui/assets/monokai.js.map +1 -0
  478. package/dist/ui/assets/night-owl.js +2 -1
  479. package/dist/ui/assets/night-owl.js.map +1 -0
  480. package/dist/ui/assets/nord.js +2 -1
  481. package/dist/ui/assets/nord.js.map +1 -0
  482. package/dist/ui/assets/one-dark-pro.js +2 -1
  483. package/dist/ui/assets/one-dark-pro.js.map +1 -0
  484. package/dist/ui/assets/one-light.js +2 -1
  485. package/dist/ui/assets/one-light.js.map +1 -0
  486. package/dist/ui/assets/php.js +2 -1
  487. package/dist/ui/assets/php.js.map +1 -0
  488. package/dist/ui/assets/plastic.js +2 -1
  489. package/dist/ui/assets/plastic.js.map +1 -0
  490. package/dist/ui/assets/poimandres.js +2 -1
  491. package/dist/ui/assets/poimandres.js.map +1 -0
  492. package/dist/ui/assets/postcss.js +2 -1
  493. package/dist/ui/assets/postcss.js.map +1 -0
  494. package/dist/ui/assets/pug.js +2 -1
  495. package/dist/ui/assets/pug.js.map +1 -0
  496. package/dist/ui/assets/python.js +2 -1
  497. package/dist/ui/assets/python.js.map +1 -0
  498. package/dist/ui/assets/r.js +2 -1
  499. package/dist/ui/assets/r.js.map +1 -0
  500. package/dist/ui/assets/red.js +2 -1
  501. package/dist/ui/assets/red.js.map +1 -0
  502. package/dist/ui/assets/regexp.js +2 -1
  503. package/dist/ui/assets/regexp.js.map +1 -0
  504. package/dist/ui/assets/rose-pine-dawn.js +2 -1
  505. package/dist/ui/assets/rose-pine-dawn.js.map +1 -0
  506. package/dist/ui/assets/rose-pine-moon.js +2 -1
  507. package/dist/ui/assets/rose-pine-moon.js.map +1 -0
  508. package/dist/ui/assets/rose-pine.js +2 -1
  509. package/dist/ui/assets/rose-pine.js.map +1 -0
  510. package/dist/ui/assets/sass.js +2 -1
  511. package/dist/ui/assets/sass.js.map +1 -0
  512. package/dist/ui/assets/scss.js +2 -1
  513. package/dist/ui/assets/scss.js.map +1 -0
  514. package/dist/ui/assets/serverTimingMeta.js +51 -0
  515. package/dist/ui/assets/serverTimingMeta.js.map +1 -0
  516. package/dist/ui/assets/shellscript.js +2 -1
  517. package/dist/ui/assets/shellscript.js.map +1 -0
  518. package/dist/ui/assets/slack-dark.js +2 -1
  519. package/dist/ui/assets/slack-dark.js.map +1 -0
  520. package/dist/ui/assets/slack-ochin.js +2 -1
  521. package/dist/ui/assets/slack-ochin.js.map +1 -0
  522. package/dist/ui/assets/snazzy-light.js +2 -1
  523. package/dist/ui/assets/snazzy-light.js.map +1 -0
  524. package/dist/ui/assets/solarized-dark.js +2 -1
  525. package/dist/ui/assets/solarized-dark.js.map +1 -0
  526. package/dist/ui/assets/solarized-light.js +2 -1
  527. package/dist/ui/assets/solarized-light.js.map +1 -0
  528. package/dist/ui/assets/sql.js +2 -1
  529. package/dist/ui/assets/sql.js.map +1 -0
  530. package/dist/ui/assets/stylus.js +2 -1
  531. package/dist/ui/assets/stylus.js.map +1 -0
  532. package/dist/ui/assets/svelte.js +2 -1
  533. package/dist/ui/assets/svelte.js.map +1 -0
  534. package/dist/ui/assets/synthwave-84.js +2 -1
  535. package/dist/ui/assets/synthwave-84.js.map +1 -0
  536. package/dist/ui/assets/tokyo-night.js +2 -1
  537. package/dist/ui/assets/tokyo-night.js.map +1 -0
  538. package/dist/ui/assets/ts-tags.js +2 -1
  539. package/dist/ui/assets/ts-tags.js.map +1 -0
  540. package/dist/ui/assets/tsx.js +2 -1
  541. package/dist/ui/assets/tsx.js.map +1 -0
  542. package/dist/ui/assets/typescript.js +2 -1
  543. package/dist/ui/assets/typescript.js.map +1 -0
  544. package/dist/ui/assets/vesper.js +2 -1
  545. package/dist/ui/assets/vesper.js.map +1 -0
  546. package/dist/ui/assets/vitesse-black.js +2 -1
  547. package/dist/ui/assets/vitesse-black.js.map +1 -0
  548. package/dist/ui/assets/vitesse-dark.js +2 -1
  549. package/dist/ui/assets/vitesse-dark.js.map +1 -0
  550. package/dist/ui/assets/vitesse-light.js +2 -1
  551. package/dist/ui/assets/vitesse-light.js.map +1 -0
  552. package/dist/ui/assets/vue-html.js +2 -1
  553. package/dist/ui/assets/vue-html.js.map +1 -0
  554. package/dist/ui/assets/vue-vine.js +2 -1
  555. package/dist/ui/assets/vue-vine.js.map +1 -0
  556. package/dist/ui/assets/vue.js +2 -1
  557. package/dist/ui/assets/vue.js.map +1 -0
  558. package/dist/ui/assets/wasm.js +2 -1
  559. package/dist/ui/assets/wasm.js.map +1 -0
  560. package/dist/ui/assets/wasm2.js +2 -1
  561. package/dist/ui/assets/wasm2.js.map +1 -0
  562. package/dist/ui/assets/wgsl.js +2 -1
  563. package/dist/ui/assets/wgsl.js.map +1 -0
  564. package/dist/ui/assets/wit.js +2 -1
  565. package/dist/ui/assets/wit.js.map +1 -0
  566. package/dist/ui/assets/xml.js +2 -1
  567. package/dist/ui/assets/xml.js.map +1 -0
  568. package/dist/ui/assets/yaml.js +2 -1
  569. package/dist/ui/assets/yaml.js.map +1 -0
  570. package/dist/ui/manifest.json +17 -25
  571. package/package.json +3 -3
  572. package/dist/_virtual/re.js +0 -5
  573. package/dist/_virtual/re.js.map +0 -1
  574. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/comparator.js +0 -123
  575. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/comparator.js.map +0 -1
  576. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/range.js +0 -388
  577. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/range.js.map +0 -1
  578. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/semver.js +0 -277
  579. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/semver.js.map +0 -1
  580. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/clean.js +0 -11
  581. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/clean.js.map +0 -1
  582. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/cmp.js +0 -53
  583. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/cmp.js.map +0 -1
  584. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/coerce.js +0 -46
  585. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/coerce.js.map +0 -1
  586. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-build.js +0 -12
  587. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-build.js.map +0 -1
  588. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-loose.js +0 -8
  589. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-loose.js.map +0 -1
  590. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare.js +0 -8
  591. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare.js.map +0 -1
  592. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/diff.js +0 -42
  593. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/diff.js.map +0 -1
  594. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/eq.js +0 -8
  595. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/eq.js.map +0 -1
  596. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gt.js +0 -8
  597. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gt.js.map +0 -1
  598. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gte.js +0 -8
  599. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gte.js.map +0 -1
  600. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/inc.js +0 -22
  601. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/inc.js.map +0 -1
  602. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lt.js +0 -8
  603. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lt.js.map +0 -1
  604. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lte.js +0 -8
  605. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lte.js.map +0 -1
  606. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/major.js +0 -8
  607. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/major.js.map +0 -1
  608. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/minor.js +0 -8
  609. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/minor.js.map +0 -1
  610. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/neq.js +0 -8
  611. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/neq.js.map +0 -1
  612. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/parse.js +0 -20
  613. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/parse.js.map +0 -1
  614. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/patch.js +0 -8
  615. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/patch.js.map +0 -1
  616. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/prerelease.js +0 -11
  617. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/prerelease.js.map +0 -1
  618. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rcompare.js +0 -8
  619. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rcompare.js.map +0 -1
  620. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rsort.js +0 -8
  621. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rsort.js.map +0 -1
  622. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/satisfies.js +0 -15
  623. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/satisfies.js.map +0 -1
  624. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/sort.js +0 -8
  625. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/sort.js.map +0 -1
  626. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/valid.js +0 -11
  627. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/valid.js.map +0 -1
  628. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/index.js +0 -135
  629. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/index.js.map +0 -1
  630. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/constants.js +0 -29
  631. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/constants.js.map +0 -1
  632. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/debug.js +0 -7
  633. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/debug.js.map +0 -1
  634. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/identifiers.js +0 -22
  635. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/identifiers.js.map +0 -1
  636. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/lrucache.js +0 -35
  637. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/lrucache.js.map +0 -1
  638. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/parse-options.js +0 -16
  639. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/parse-options.js.map +0 -1
  640. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/re.js +0 -91
  641. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/re.js.map +0 -1
  642. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/gtr.js +0 -8
  643. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/gtr.js.map +0 -1
  644. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/intersects.js +0 -12
  645. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/intersects.js.map +0 -1
  646. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/ltr.js +0 -8
  647. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/ltr.js.map +0 -1
  648. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/max-satisfying.js +0 -28
  649. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/max-satisfying.js.map +0 -1
  650. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-satisfying.js +0 -28
  651. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-satisfying.js.map +0 -1
  652. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-version.js +0 -57
  653. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-version.js.map +0 -1
  654. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/outside.js +0 -74
  655. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/outside.js.map +0 -1
  656. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/simplify.js +0 -49
  657. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/simplify.js.map +0 -1
  658. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/subset.js +0 -163
  659. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/subset.js.map +0 -1
  660. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/to-comparators.js +0 -8
  661. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/to-comparators.js.map +0 -1
  662. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/valid.js +0 -14
  663. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/valid.js.map +0 -1
  664. package/dist/ui/assets/client.js +0 -50
  665. package/dist/ui/assets/electron-index.js +0 -6
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sources":["../../src/server/cli.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { parseArgs } from \"node:util\";\nimport showHelp from \"./cli/help.ts\";\nimport mcp from \"./cli/mcp.ts\";\nimport run from \"./cli/run.ts\";\nimport server from \"./cli/server.ts\";\nimport tail from \"./cli/tail.ts\";\nimport { DEFAULT_PORT } from \"./constants.ts\";\nimport { AVAILABLE_FORMATTERS } from \"./formatters/types.ts\";\nimport type { FormatterType } from \"./formatters/types.ts\";\nimport { enableDebugLogging, logger } from \"./logger.ts\";\nimport type { CLIHandler, CLIHandlerOptions } from \"./types/cli.ts\";\n\n// When port is set to `0` for a server to listen on,\n// it tells the OS to find a random available port.\n// This can then be retrieved after the server starts.\nconst MAGIC_PORT_FOR_DYNAMIC_ASSIGNMENT = 0;\nconst PARSE_ARGS_CONFIG = {\n options: {\n port: {\n type: \"string\",\n short: \"p\",\n default: undefined,\n },\n debug: {\n type: \"boolean\",\n short: \"d\",\n default: false,\n },\n format: {\n type: \"string\",\n short: \"f\",\n default: \"human\",\n },\n // Deprecated -- use the positional `mcp` argument instead\n \"stdio-mcp\": {\n type: \"boolean\",\n default: false,\n },\n help: {\n type: \"boolean\",\n short: \"h\",\n default: false,\n },\n },\n allowPositionals: true,\n strict: true,\n} as const;\n\nexport type CLIArgs = {\n port: number;\n debug: boolean;\n help: boolean;\n format: FormatterType;\n cmd: string | undefined;\n cmdArgs: string[];\n};\n\nexport function parseCLIArgs(): CLIArgs {\n const args = Array.from(process.argv).slice(2);\n const preParse = parseArgs({\n ...PARSE_ARGS_CONFIG,\n strict: false,\n tokens: true,\n });\n let cmdArgs: string[] | undefined = undefined;\n const runToken = preParse.tokens.find(token => token.kind === \"positional\" && token.value === \"run\");\n if (runToken) {\n const cutOff = preParse.tokens.find(token => token.index > runToken.index && token.kind === \"positional\");\n cmdArgs = cutOff ? args.splice(cutOff.index) : [];\n }\n const { values, positionals } = parseArgs({\n args,\n ...PARSE_ARGS_CONFIG,\n });\n\n // Handle legacy positional argument for port (backwards compatibility)\n const portInput = positionals.length === 1 && /^\\d{1,5}$/.test(positionals[0]) ? positionals.shift() : values.port;\n\n const port = portInput != null ? Number(portInput) : runToken ? MAGIC_PORT_FOR_DYNAMIC_ASSIGNMENT : DEFAULT_PORT;\n if (Number.isNaN(port)) {\n // Validate port number\n console.error(`Error: Invalid port number '${portInput}'`);\n console.error(\"Port must be a valid number between 1 and 65535\");\n process.exit(1);\n }\n\n if (port < 0 || port > 65535) {\n console.error(`Error: Port ${port} is out of valid range (1-65535 or 0 for automatic assignment)`);\n process.exit(1);\n }\n\n if (values[\"stdio-mcp\"]) {\n positionals.unshift(\"mcp\");\n console.warn(\"Warning: --stdio-mcp is deprecated. Please use the positional argument 'mcp' instead.\");\n }\n\n const format = values.format as string;\n if (!AVAILABLE_FORMATTERS.includes(format as FormatterType)) {\n console.error(`Error: Invalid format '${format}'`);\n console.error(`Valid formats are: ${AVAILABLE_FORMATTERS.join(\", \")}`);\n process.exit(1);\n }\n\n const result: CLIArgs = {\n debug: values.debug as boolean,\n help: values.help as boolean,\n format: format as FormatterType,\n port,\n cmd: positionals[0],\n cmdArgs: cmdArgs ?? positionals.slice(1),\n };\n\n return result;\n}\nexport const CLI_CMD_MAP = new Map<string | undefined, CLIHandler>([\n [\"help\", showHelp],\n [\"mcp\", mcp],\n [\"tail\", tail],\n [\"run\", run],\n [\"server\", server],\n [undefined, server],\n]);\n\nexport async function main({\n basePath,\n filesToServe,\n}: { basePath?: CLIHandlerOptions[\"basePath\"]; filesToServe?: CLIHandlerOptions[\"filesToServe\"] } = {}) {\n let { cmd, cmdArgs, help, port, debug, format } = parseCLIArgs();\n if (debug || process.env.SPOTLIGHT_DEBUG) {\n enableDebugLogging(true);\n }\n const spotlightVersion = process.env.npm_package_version || \"{unknown}\";\n logger.info(`Spotlight by Sentry - v${spotlightVersion}`);\n\n if (help) {\n cmd = \"help\";\n cmdArgs = [];\n }\n\n const handler = CLI_CMD_MAP.get(cmd) || showHelp;\n\n return await handler({ cmd, cmdArgs, port, help, debug, format, basePath, filesToServe });\n}\n"],"names":[],"mappings":";;;;;;;;;AAgBA,MAAM,oCAAoC;AAC1C,MAAM,oBAAoB;AAAA,EACxB,SAAS;AAAA,IACP,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,IAEX,OAAO;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,IAEX,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA;AAAA,IAGX,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,EACX;AAAA,EAEF,kBAAkB;AAAA,EAClB,QAAQ;AACV;AAWO,SAAS,eAAwB;AACtC,QAAM,OAAO,MAAM,KAAK,QAAQ,IAAI,EAAE,MAAM,CAAC;AAC7C,QAAM,WAAW,UAAU;AAAA,IACzB,GAAG;AAAA,IACH,QAAQ;AAAA,IACR,QAAQ;AAAA,EAAA,CACT;AACD,MAAI,UAAgC;AACpC,QAAM,WAAW,SAAS,OAAO,KAAK,CAAA,UAAS,MAAM,SAAS,gBAAgB,MAAM,UAAU,KAAK;AACnG,MAAI,UAAU;AACZ,UAAM,SAAS,SAAS,OAAO,KAAK,CAAA,UAAS,MAAM,QAAQ,SAAS,SAAS,MAAM,SAAS,YAAY;AACxG,cAAU,SAAS,KAAK,OAAO,OAAO,KAAK,IAAI,CAAA;AAAA,EACjD;AACA,QAAM,EAAE,QAAQ,YAAA,IAAgB,UAAU;AAAA,IACxC;AAAA,IACA,GAAG;AAAA,EAAA,CACJ;AAGD,QAAM,YAAY,YAAY,WAAW,KAAK,YAAY,KAAK,YAAY,CAAC,CAAC,IAAI,YAAY,MAAA,IAAU,OAAO;AAE9G,QAAM,OAAO,aAAa,OAAO,OAAO,SAAS,IAAI,WAAW,oCAAoC;AACpG,MAAI,OAAO,MAAM,IAAI,GAAG;AAEtB,YAAQ,MAAM,+BAA+B,SAAS,GAAG;AACzD,YAAQ,MAAM,iDAAiD;AAC/D,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,MAAI,OAAO,KAAK,OAAO,OAAO;AAC5B,YAAQ,MAAM,eAAe,IAAI,gEAAgE;AACjG,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,MAAI,OAAO,WAAW,GAAG;AACvB,gBAAY,QAAQ,KAAK;AACzB,YAAQ,KAAK,uFAAuF;AAAA,EACtG;AAEA,QAAM,SAAS,OAAO;AACtB,MAAI,CAAC,qBAAqB,SAAS,MAAuB,GAAG;AAC3D,YAAQ,MAAM,0BAA0B,MAAM,GAAG;AACjD,YAAQ,MAAM,sBAAsB,qBAAqB,KAAK,IAAI,CAAC,EAAE;AACrE,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,SAAkB;AAAA,IACtB,OAAO,OAAO;AAAA,IACd,MAAM,OAAO;AAAA,IACb;AAAA,IACA;AAAA,IACA,KAAK,YAAY,CAAC;AAAA,IAClB,SAAS,WAAW,YAAY,MAAM,CAAC;AAAA,EAAA;AAGzC,SAAO;AACT;AACO,MAAM,kCAAkB,IAAoC;AAAA,EACjE,CAAC,QAAQ,QAAQ;AAAA,EACjB,CAAC,OAAO,GAAG;AAAA,EACX,CAAC,QAAQ,IAAI;AAAA,EACb,CAAC,OAAO,GAAG;AAAA,EACX,CAAC,UAAU,MAAM;AAAA,EACjB,CAAC,QAAW,MAAM;AACpB,CAAC;AAED,eAAsB,KAAK;AAAA,EACzB;AAAA,EACA;AACF,IAAoG,IAAI;AACtG,MAAI,EAAE,KAAK,SAAS,MAAM,MAAM,OAAO,OAAA,IAAW,aAAA;AAClD,MAAI,SAAS,QAAQ,IAAI,iBAAiB;AACxC,uBAAmB,IAAI;AAAA,EACzB;AACA,QAAM,mBAAmB;AACzB,SAAO,KAAK,0BAA0B,gBAAgB,EAAE;AAExD,MAAI,MAAM;AACR,UAAM;AACN,cAAU,CAAA;AAAA,EACZ;AAEA,QAAM,UAAU,YAAY,IAAI,GAAG,KAAK;AAExC,SAAO,MAAM,QAAQ,EAAE,KAAK,SAAS,MAAM,MAAM,OAAO,QAAQ,UAAU,aAAA,CAAc;AAC1F;"}
1
+ {"version":3,"file":"cli.js","sources":["../../src/server/cli.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { parseArgs } from \"node:util\";\nimport { metrics } from \"@sentry/node\";\nimport showHelp from \"./cli/help.ts\";\nimport mcp from \"./cli/mcp.ts\";\nimport run from \"./cli/run.ts\";\nimport server from \"./cli/server.ts\";\nimport tail from \"./cli/tail.ts\";\nimport { DEFAULT_PORT } from \"./constants.ts\";\nimport { AVAILABLE_FORMATTERS } from \"./formatters/types.ts\";\nimport type { FormatterType } from \"./formatters/types.ts\";\nimport { enableDebugLogging, logger } from \"./logger.ts\";\nimport type { CLIHandler, CLIHandlerOptions } from \"./types/cli.ts\";\n\n// When port is set to `0` for a server to listen on,\n// it tells the OS to find a random available port.\n// This can then be retrieved after the server starts.\nconst MAGIC_PORT_FOR_DYNAMIC_ASSIGNMENT = 0;\nconst PARSE_ARGS_CONFIG = {\n options: {\n port: {\n type: \"string\",\n short: \"p\",\n default: undefined,\n },\n debug: {\n type: \"boolean\",\n short: \"d\",\n default: false,\n },\n format: {\n type: \"string\",\n short: \"f\",\n default: \"human\",\n },\n \"allowed-origin\": {\n type: \"string\",\n short: \"A\",\n multiple: true,\n default: [] as string[],\n },\n // Deprecated -- use the positional `mcp` argument instead\n \"stdio-mcp\": {\n type: \"boolean\",\n default: false,\n },\n help: {\n type: \"boolean\",\n short: \"h\",\n default: false,\n },\n },\n allowPositionals: true,\n strict: true,\n} as const;\n\nexport type CLIArgs = {\n port: number;\n debug: boolean;\n help: boolean;\n format: FormatterType;\n cmd: string | undefined;\n cmdArgs: string[];\n allowedOrigins: string[];\n};\n\nexport function parseCLIArgs(): CLIArgs {\n const args = Array.from(process.argv).slice(2);\n const preParse = parseArgs({\n ...PARSE_ARGS_CONFIG,\n strict: false,\n tokens: true,\n });\n let cmdArgs: string[] | undefined = undefined;\n const runToken = preParse.tokens.find(token => token.kind === \"positional\" && token.value === \"run\");\n if (runToken) {\n const cutOff = preParse.tokens.find(token => token.index > runToken.index && token.kind === \"positional\");\n cmdArgs = cutOff ? args.splice(cutOff.index) : [];\n }\n const { values, positionals } = parseArgs({\n args,\n ...PARSE_ARGS_CONFIG,\n });\n\n // Handle legacy positional argument for port (backwards compatibility)\n const portInput = positionals.length === 1 && /^\\d{1,5}$/.test(positionals[0]) ? positionals.shift() : values.port;\n\n const port = portInput != null ? Number(portInput) : runToken ? MAGIC_PORT_FOR_DYNAMIC_ASSIGNMENT : DEFAULT_PORT;\n if (Number.isNaN(port)) {\n // Validate port number\n console.error(`Error: Invalid port number '${portInput}'`);\n console.error(\"Port must be a valid number between 1 and 65535\");\n process.exit(1);\n }\n\n if (port < 0 || port > 65535) {\n console.error(`Error: Port ${port} is out of valid range (1-65535 or 0 for automatic assignment)`);\n process.exit(1);\n }\n\n if (values[\"stdio-mcp\"]) {\n positionals.unshift(\"mcp\");\n console.warn(\"Warning: --stdio-mcp is deprecated. Please use the positional argument 'mcp' instead.\");\n }\n\n const format = values.format as string;\n if (!AVAILABLE_FORMATTERS.includes(format as FormatterType)) {\n console.error(`Error: Invalid format '${format}'`);\n console.error(`Valid formats are: ${AVAILABLE_FORMATTERS.join(\", \")}`);\n process.exit(1);\n }\n\n // Parse allowed origins - supports both repeatable flags and comma-separated values\n const allowedOriginInput = values[\"allowed-origin\"] as string[];\n const allowedOrigins = allowedOriginInput.flatMap(origin => origin.split(\",\").map(o => o.trim())).filter(Boolean);\n\n const result: CLIArgs = {\n debug: values.debug as boolean,\n help: values.help as boolean,\n format: format as FormatterType,\n port,\n cmd: positionals[0],\n cmdArgs: cmdArgs ?? positionals.slice(1),\n allowedOrigins,\n };\n\n return result;\n}\nexport const CLI_CMD_MAP = new Map<string | undefined, CLIHandler>([\n [\"help\", showHelp],\n [\"mcp\", mcp],\n [\"tail\", tail],\n [\"run\", run],\n [\"server\", server],\n [undefined, server],\n]);\n\nexport async function main({\n basePath,\n filesToServe,\n}: { basePath?: CLIHandlerOptions[\"basePath\"]; filesToServe?: CLIHandlerOptions[\"filesToServe\"] } = {}) {\n let { cmd, cmdArgs, help, port, debug, format, allowedOrigins } = parseCLIArgs();\n if (debug || process.env.SPOTLIGHT_DEBUG) {\n enableDebugLogging(true);\n }\n const spotlightVersion = process.env.npm_package_version || \"{unknown}\";\n logger.info(`Spotlight by Sentry - v${spotlightVersion}`);\n\n metrics.count(\"cli.invocation\", 1, {\n attributes: {\n command: cmd || \"server\",\n format,\n debug: String(debug),\n },\n });\n\n if (help) {\n cmd = \"help\";\n cmdArgs = [];\n }\n\n const handler = CLI_CMD_MAP.get(cmd) || showHelp;\n\n return await handler({ cmd, cmdArgs, port, help, debug, format, basePath, filesToServe, allowedOrigins });\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAiBA,MAAM,oCAAoC;AAC1C,MAAM,oBAAoB;AAAA,EACxB,SAAS;AAAA,IACP,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,IAEX,OAAO;AAAA,MACL,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,IAEX,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,IAEX,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,MACV,SAAS,CAAA;AAAA,IAAC;AAAA;AAAA,IAGZ,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,EACX;AAAA,EAEF,kBAAkB;AAAA,EAClB,QAAQ;AACV;AAYO,SAAS,eAAwB;AACtC,QAAM,OAAO,MAAM,KAAK,QAAQ,IAAI,EAAE,MAAM,CAAC;AAC7C,QAAM,WAAW,UAAU;AAAA,IACzB,GAAG;AAAA,IACH,QAAQ;AAAA,IACR,QAAQ;AAAA,EAAA,CACT;AACD,MAAI,UAAgC;AACpC,QAAM,WAAW,SAAS,OAAO,KAAK,CAAA,UAAS,MAAM,SAAS,gBAAgB,MAAM,UAAU,KAAK;AACnG,MAAI,UAAU;AACZ,UAAM,SAAS,SAAS,OAAO,KAAK,CAAA,UAAS,MAAM,QAAQ,SAAS,SAAS,MAAM,SAAS,YAAY;AACxG,cAAU,SAAS,KAAK,OAAO,OAAO,KAAK,IAAI,CAAA;AAAA,EACjD;AACA,QAAM,EAAE,QAAQ,YAAA,IAAgB,UAAU;AAAA,IACxC;AAAA,IACA,GAAG;AAAA,EAAA,CACJ;AAGD,QAAM,YAAY,YAAY,WAAW,KAAK,YAAY,KAAK,YAAY,CAAC,CAAC,IAAI,YAAY,MAAA,IAAU,OAAO;AAE9G,QAAM,OAAO,aAAa,OAAO,OAAO,SAAS,IAAI,WAAW,oCAAoC;AACpG,MAAI,OAAO,MAAM,IAAI,GAAG;AAEtB,YAAQ,MAAM,+BAA+B,SAAS,GAAG;AACzD,YAAQ,MAAM,iDAAiD;AAC/D,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,MAAI,OAAO,KAAK,OAAO,OAAO;AAC5B,YAAQ,MAAM,eAAe,IAAI,gEAAgE;AACjG,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,MAAI,OAAO,WAAW,GAAG;AACvB,gBAAY,QAAQ,KAAK;AACzB,YAAQ,KAAK,uFAAuF;AAAA,EACtG;AAEA,QAAM,SAAS,OAAO;AACtB,MAAI,CAAC,qBAAqB,SAAS,MAAuB,GAAG;AAC3D,YAAQ,MAAM,0BAA0B,MAAM,GAAG;AACjD,YAAQ,MAAM,sBAAsB,qBAAqB,KAAK,IAAI,CAAC,EAAE;AACrE,YAAQ,KAAK,CAAC;AAAA,EAChB;AAGA,QAAM,qBAAqB,OAAO,gBAAgB;AAClD,QAAM,iBAAiB,mBAAmB,QAAQ,CAAA,WAAU,OAAO,MAAM,GAAG,EAAE,IAAI,CAAA,MAAK,EAAE,KAAA,CAAM,CAAC,EAAE,OAAO,OAAO;AAEhH,QAAM,SAAkB;AAAA,IACtB,OAAO,OAAO;AAAA,IACd,MAAM,OAAO;AAAA,IACb;AAAA,IACA;AAAA,IACA,KAAK,YAAY,CAAC;AAAA,IAClB,SAAS,WAAW,YAAY,MAAM,CAAC;AAAA,IACvC;AAAA,EAAA;AAGF,SAAO;AACT;AACO,MAAM,kCAAkB,IAAoC;AAAA,EACjE,CAAC,QAAQ,QAAQ;AAAA,EACjB,CAAC,OAAO,GAAG;AAAA,EACX,CAAC,QAAQ,IAAI;AAAA,EACb,CAAC,OAAO,GAAG;AAAA,EACX,CAAC,UAAU,MAAM;AAAA,EACjB,CAAC,QAAW,MAAM;AACpB,CAAC;AAED,eAAsB,KAAK;AAAA,EACzB;AAAA,EACA;AACF,IAAoG,IAAI;AACtG,MAAI,EAAE,KAAK,SAAS,MAAM,MAAM,OAAO,QAAQ,eAAA,IAAmB,aAAA;AAClE,MAAI,SAAS,QAAQ,IAAI,iBAAiB;AACxC,uBAAmB,IAAI;AAAA,EACzB;AACA,QAAM,mBAAmB;AACzB,SAAO,KAAK,0BAA0B,gBAAgB,EAAE;AAExD,UAAQ,MAAM,kBAAkB,GAAG;AAAA,IACjC,YAAY;AAAA,MACV,SAAS,OAAO;AAAA,MAChB;AAAA,MACA,OAAO,OAAO,KAAK;AAAA,IAAA;AAAA,EACrB,CACD;AAED,MAAI,MAAM;AACR,UAAM;AACN,cAAU,CAAA;AAAA,EACZ;AAEA,QAAM,UAAU,YAAY,IAAI,GAAG,KAAK;AAExC,SAAO,MAAM,QAAQ,EAAE,KAAK,SAAS,MAAM,MAAM,OAAO,QAAQ,UAAU,cAAc,eAAA,CAAgB;AAC1G;"}
@@ -1,3 +1,12 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "bf986a16-cf7c-49bb-90cf-ea2bc54c2015", e._sentryDebugIdIdentifier = "sentry-dbid-bf986a16-cf7c-49bb-90cf-ea2bc54c2015");
6
+ } catch (e2) {
7
+ }
8
+ }();
9
+ import "../_virtual/_sentry-release-injection-file.js";
1
10
  const DEFAULT_PORT = 8969;
2
11
  const SERVER_IDENTIFIER = "spotlight-by-sentry";
3
12
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../src/server/constants.ts"],"sourcesContent":["// Re-export shared constants\nexport { CONTEXT_LINES_ENDPOINT, RAW_TYPES, SENTRY_CONTENT_TYPE } from \"../shared/constants.ts\";\n\n// Spotlight server constants\nexport const DEFAULT_PORT = 8969;\nexport const SERVER_IDENTIFIER = \"spotlight-by-sentry\";\n"],"names":[],"mappings":"AAIO,MAAM,eAAe;AACrB,MAAM,oBAAoB;"}
1
+ {"version":3,"file":"constants.js","sources":["../../src/server/constants.ts"],"sourcesContent":["// Re-export shared constants\nexport { CONTEXT_LINES_ENDPOINT, RAW_TYPES, SENTRY_CONTENT_TYPE } from \"../shared/constants.ts\";\n\n// Spotlight server constants\nexport const DEFAULT_PORT = 8969;\nexport const SERVER_IDENTIFIER = \"spotlight-by-sentry\";\n"],"names":[],"mappings":";;;;;;;;;AAIO,MAAM,eAAe;AACrB,MAAM,oBAAoB;"}
@@ -1,4 +1,13 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "df48d045-c98f-4e83-b67a-1ef1520d0a1a", e._sentryDebugIdIdentifier = "sentry-dbid-df48d045-c98f-4e83-b67a-1ef1520d0a1a");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { inferEnvelopeSource, formatLogLine } from "./utils.js";
10
+ import "../../../_virtual/_sentry-release-injection-file.js";
2
11
  function formatError(event, envelopeHeader) {
3
12
  const source = inferEnvelopeSource(envelopeHeader, event);
4
13
  const exception = event.exception?.values?.[0];
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/human/errors.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryErrorEvent } from \"../../parser/index.ts\";\nimport { formatLogLine, inferEnvelopeSource } from \"./utils.ts\";\n\n/**\n * Format an error event with envelope headers for source inference\n */\nexport function formatError(event: SentryErrorEvent, envelopeHeader: Envelope[0]): string[] {\n const source = inferEnvelopeSource(envelopeHeader, event);\n\n const exception = event.exception?.values?.[0];\n const errorType = exception?.type || \"Error\";\n const errorValue = exception?.value || event.message || \"Unknown error\";\n\n let message = `${errorType}: ${errorValue}`;\n\n const frames = exception?.stacktrace?.frames;\n if (frames?.length) {\n const frame = frames.find((f: any) => f.in_app) || frames[frames.length - 1];\n if (frame) {\n if (frame.filename && frame.lineno) {\n const location = frame.colno\n ? `${frame.filename}:${frame.lineno}:${frame.colno}`\n : `${frame.filename}:${frame.lineno}`;\n message += ` [${location}]`;\n } else if (frame.filename) {\n message += ` [${frame.filename}]`;\n }\n\n if (frame.function && !message.includes(frame.function)) {\n message += ` [${frame.function}]`;\n }\n }\n }\n\n return [formatLogLine(event.timestamp, source, \"error\", message)];\n}\n"],"names":[],"mappings":";AAOO,SAAS,YAAY,OAAyB,gBAAuC;AAC1F,QAAM,SAAS,oBAAoB,gBAAgB,KAAK;AAExD,QAAM,YAAY,MAAM,WAAW,SAAS,CAAC;AAC7C,QAAM,YAAY,WAAW,QAAQ;AACrC,QAAM,aAAa,WAAW,SAAS,MAAM,WAAW;AAExD,MAAI,UAAU,GAAG,SAAS,KAAK,UAAU;AAEzC,QAAM,SAAS,WAAW,YAAY;AACtC,MAAI,QAAQ,QAAQ;AAClB,UAAM,QAAQ,OAAO,KAAK,CAAC,MAAW,EAAE,MAAM,KAAK,OAAO,OAAO,SAAS,CAAC;AAC3E,QAAI,OAAO;AACT,UAAI,MAAM,YAAY,MAAM,QAAQ;AAClC,cAAM,WAAW,MAAM,QACnB,GAAG,MAAM,QAAQ,IAAI,MAAM,MAAM,IAAI,MAAM,KAAK,KAChD,GAAG,MAAM,QAAQ,IAAI,MAAM,MAAM;AACrC,mBAAW,KAAK,QAAQ;AAAA,MAC1B,WAAW,MAAM,UAAU;AACzB,mBAAW,KAAK,MAAM,QAAQ;AAAA,MAChC;AAEA,UAAI,MAAM,YAAY,CAAC,QAAQ,SAAS,MAAM,QAAQ,GAAG;AACvD,mBAAW,KAAK,MAAM,QAAQ;AAAA,MAChC;AAAA,IACF;AAAA,EACF;AAEA,SAAO,CAAC,cAAc,MAAM,WAAW,QAAQ,SAAS,OAAO,CAAC;AAClE;"}
1
+ {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/human/errors.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryErrorEvent } from \"../../parser/index.ts\";\nimport { formatLogLine, inferEnvelopeSource } from \"./utils.ts\";\n\n/**\n * Format an error event with envelope headers for source inference\n */\nexport function formatError(event: SentryErrorEvent, envelopeHeader: Envelope[0]): string[] {\n const source = inferEnvelopeSource(envelopeHeader, event);\n\n const exception = event.exception?.values?.[0];\n const errorType = exception?.type || \"Error\";\n const errorValue = exception?.value || event.message || \"Unknown error\";\n\n let message = `${errorType}: ${errorValue}`;\n\n const frames = exception?.stacktrace?.frames;\n if (frames?.length) {\n const frame = frames.find((f: any) => f.in_app) || frames[frames.length - 1];\n if (frame) {\n if (frame.filename && frame.lineno) {\n const location = frame.colno\n ? `${frame.filename}:${frame.lineno}:${frame.colno}`\n : `${frame.filename}:${frame.lineno}`;\n message += ` [${location}]`;\n } else if (frame.filename) {\n message += ` [${frame.filename}]`;\n }\n\n if (frame.function && !message.includes(frame.function)) {\n message += ` [${frame.function}]`;\n }\n }\n }\n\n return [formatLogLine(event.timestamp, source, \"error\", message)];\n}\n"],"names":[],"mappings":";;;;;;;;;;AAOO,SAAS,YAAY,OAAyB,gBAAuC;AAC1F,QAAM,SAAS,oBAAoB,gBAAgB,KAAK;AAExD,QAAM,YAAY,MAAM,WAAW,SAAS,CAAC;AAC7C,QAAM,YAAY,WAAW,QAAQ;AACrC,QAAM,aAAa,WAAW,SAAS,MAAM,WAAW;AAExD,MAAI,UAAU,GAAG,SAAS,KAAK,UAAU;AAEzC,QAAM,SAAS,WAAW,YAAY;AACtC,MAAI,QAAQ,QAAQ;AAClB,UAAM,QAAQ,OAAO,KAAK,CAAC,MAAW,EAAE,MAAM,KAAK,OAAO,OAAO,SAAS,CAAC;AAC3E,QAAI,OAAO;AACT,UAAI,MAAM,YAAY,MAAM,QAAQ;AAClC,cAAM,WAAW,MAAM,QACnB,GAAG,MAAM,QAAQ,IAAI,MAAM,MAAM,IAAI,MAAM,KAAK,KAChD,GAAG,MAAM,QAAQ,IAAI,MAAM,MAAM;AACrC,mBAAW,KAAK,QAAQ;AAAA,MAC1B,WAAW,MAAM,UAAU;AACzB,mBAAW,KAAK,MAAM,QAAQ;AAAA,MAChC;AAEA,UAAI,MAAM,YAAY,CAAC,QAAQ,SAAS,MAAM,QAAQ,GAAG;AACvD,mBAAW,KAAK,MAAM,QAAQ;AAAA,MAChC;AAAA,IACF;AAAA,EACF;AAEA,SAAO,CAAC,cAAc,MAAM,WAAW,QAAQ,SAAS,OAAO,CAAC;AAClE;"}
@@ -1,7 +1,16 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "07c7f71c-5201-4f0b-ad81-eae990612a3f", e._sentryDebugIdIdentifier = "sentry-dbid-07c7f71c-5201-4f0b-ad81-eae990612a3f");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { isTraceEvent, isLogEvent, isErrorEvent } from "../../parser/helpers.js";
2
10
  import { formatError } from "./errors.js";
3
11
  import { formatLog } from "./logs.js";
4
12
  import { formatTrace } from "./traces.js";
13
+ import "../../../_virtual/_sentry-release-injection-file.js";
5
14
  const formatters = {
6
15
  event: { typeGuard: isErrorEvent, format: formatError },
7
16
  log: { typeGuard: isLogEvent, format: formatLog },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/server/formatters/human/index.ts"],"sourcesContent":["import { isErrorEvent, isLogEvent, isTraceEvent } from \"../../parser/helpers.ts\";\nimport type { FormatterRegistry } from \"../types.ts\";\nimport { formatError } from \"./errors.ts\";\nimport { formatLog } from \"./logs.ts\";\nimport { formatTrace } from \"./traces.ts\";\n\nexport const formatters: FormatterRegistry = {\n event: { typeGuard: isErrorEvent, format: formatError },\n log: { typeGuard: isLogEvent, format: formatLog },\n transaction: { typeGuard: isTraceEvent, format: formatTrace },\n};\n"],"names":[],"mappings":";;;;AAMO,MAAM,aAAgC;AAAA,EAC3C,OAAO,EAAE,WAAW,cAAc,QAAQ,YAAA;AAAA,EAC1C,KAAK,EAAE,WAAW,YAAY,QAAQ,UAAA;AAAA,EACtC,aAAa,EAAE,WAAW,cAAc,QAAQ,YAAA;AAClD;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/server/formatters/human/index.ts"],"sourcesContent":["import { isErrorEvent, isLogEvent, isTraceEvent } from \"../../parser/helpers.ts\";\nimport type { FormatterRegistry } from \"../types.ts\";\nimport { formatError } from \"./errors.ts\";\nimport { formatLog } from \"./logs.ts\";\nimport { formatTrace } from \"./traces.ts\";\n\nexport const formatters: FormatterRegistry = {\n event: { typeGuard: isErrorEvent, format: formatError },\n log: { typeGuard: isLogEvent, format: formatLog },\n transaction: { typeGuard: isTraceEvent, format: formatTrace },\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAMO,MAAM,aAAgC;AAAA,EAC3C,OAAO,EAAE,WAAW,cAAc,QAAQ,YAAA;AAAA,EAC1C,KAAK,EAAE,WAAW,YAAY,QAAQ,UAAA;AAAA,EACtC,aAAa,EAAE,WAAW,cAAc,QAAQ,YAAA;AAClD;"}
@@ -1,4 +1,13 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "6053728c-2596-4305-9832-86e87e07df6b", e._sentryDebugIdIdentifier = "sentry-dbid-6053728c-2596-4305-9832-86e87e07df6b");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { inferEnvelopeSource, formatLogLine } from "./utils.js";
10
+ import "../../../_virtual/_sentry-release-injection-file.js";
2
11
  function formatSingleLog(log, source) {
3
12
  const level = log.level || "log";
4
13
  const message = log.body || "";
@@ -1 +1 @@
1
- {"version":3,"file":"logs.js","sources":["../../../../src/server/formatters/human/logs.ts"],"sourcesContent":["import type { Envelope, SerializedLog } from \"@sentry/core\";\nimport type { SentryLogEvent } from \"../../parser/index.ts\";\nimport { type SourceType, formatLogLine, inferEnvelopeSource } from \"./utils.ts\";\n\n/**\n * Format a single log entry with source inference\n */\nfunction formatSingleLog(log: SerializedLog, source: SourceType): string {\n const level = log.level || \"log\";\n const message = log.body || \"\";\n\n const attrs: string[] = [];\n if (log.attributes) {\n for (const [key, attr] of Object.entries(log.attributes)) {\n if (!key.startsWith(\"sentry.\") && attr.value !== undefined && attr.value !== null) {\n attrs.push(`[${key}=${attr.value}]`);\n }\n }\n }\n\n const fullMessage = attrs.length > 0 ? `${message} ${attrs.join(\" \")}` : message;\n\n return formatLogLine(log.timestamp, source, level, fullMessage);\n}\n\n/**\n * Format a log event with envelope headers for source inference\n */\nexport function formatLog(event: SentryLogEvent, envelopeHeader: Envelope[0]): string[] {\n const source = inferEnvelopeSource(envelopeHeader, event);\n return event.items.map(log => formatSingleLog(log, source));\n}\n"],"names":[],"mappings":";AAOA,SAAS,gBAAgB,KAAoB,QAA4B;AACvE,QAAM,QAAQ,IAAI,SAAS;AAC3B,QAAM,UAAU,IAAI,QAAQ;AAE5B,QAAM,QAAkB,CAAA;AACxB,MAAI,IAAI,YAAY;AAClB,eAAW,CAAC,KAAK,IAAI,KAAK,OAAO,QAAQ,IAAI,UAAU,GAAG;AACxD,UAAI,CAAC,IAAI,WAAW,SAAS,KAAK,KAAK,UAAU,UAAa,KAAK,UAAU,MAAM;AACjF,cAAM,KAAK,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;AAAA,MACrC;AAAA,IACF;AAAA,EACF;AAEA,QAAM,cAAc,MAAM,SAAS,IAAI,GAAG,OAAO,IAAI,MAAM,KAAK,GAAG,CAAC,KAAK;AAEzE,SAAO,cAAc,IAAI,WAAW,QAAQ,OAAO,WAAW;AAChE;AAKO,SAAS,UAAU,OAAuB,gBAAuC;AACtF,QAAM,SAAS,oBAAoB,gBAAgB,KAAK;AACxD,SAAO,MAAM,MAAM,IAAI,SAAO,gBAAgB,KAAK,MAAM,CAAC;AAC5D;"}
1
+ {"version":3,"file":"logs.js","sources":["../../../../src/server/formatters/human/logs.ts"],"sourcesContent":["import type { Envelope, SerializedLog } from \"@sentry/core\";\nimport type { SentryLogEvent } from \"../../parser/index.ts\";\nimport { type SourceType, formatLogLine, inferEnvelopeSource } from \"./utils.ts\";\n\n/**\n * Format a single log entry with source inference\n */\nfunction formatSingleLog(log: SerializedLog, source: SourceType): string {\n const level = log.level || \"log\";\n const message = log.body || \"\";\n\n const attrs: string[] = [];\n if (log.attributes) {\n for (const [key, attr] of Object.entries(log.attributes)) {\n if (!key.startsWith(\"sentry.\") && attr.value !== undefined && attr.value !== null) {\n attrs.push(`[${key}=${attr.value}]`);\n }\n }\n }\n\n const fullMessage = attrs.length > 0 ? `${message} ${attrs.join(\" \")}` : message;\n\n return formatLogLine(log.timestamp, source, level, fullMessage);\n}\n\n/**\n * Format a log event with envelope headers for source inference\n */\nexport function formatLog(event: SentryLogEvent, envelopeHeader: Envelope[0]): string[] {\n const source = inferEnvelopeSource(envelopeHeader, event);\n return event.items.map(log => formatSingleLog(log, source));\n}\n"],"names":[],"mappings":";;;;;;;;;;AAOA,SAAS,gBAAgB,KAAoB,QAA4B;AACvE,QAAM,QAAQ,IAAI,SAAS;AAC3B,QAAM,UAAU,IAAI,QAAQ;AAE5B,QAAM,QAAkB,CAAA;AACxB,MAAI,IAAI,YAAY;AAClB,eAAW,CAAC,KAAK,IAAI,KAAK,OAAO,QAAQ,IAAI,UAAU,GAAG;AACxD,UAAI,CAAC,IAAI,WAAW,SAAS,KAAK,KAAK,UAAU,UAAa,KAAK,UAAU,MAAM;AACjF,cAAM,KAAK,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;AAAA,MACrC;AAAA,IACF;AAAA,EACF;AAEA,QAAM,cAAc,MAAM,SAAS,IAAI,GAAG,OAAO,IAAI,MAAM,KAAK,GAAG,CAAC,KAAK;AAEzE,SAAO,cAAc,IAAI,WAAW,QAAQ,OAAO,WAAW;AAChE;AAKO,SAAS,UAAU,OAAuB,gBAAuC;AACtF,QAAM,SAAS,oBAAoB,gBAAgB,KAAK;AACxD,SAAO,MAAM,MAAM,IAAI,SAAO,gBAAgB,KAAK,MAAM,CAAC;AAC5D;"}
@@ -1,5 +1,14 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "9cea3498-c982-4376-a62c-45554f99f0e3", e._sentryDebugIdIdentifier = "sentry-dbid-9cea3498-c982-4376-a62c-45554f99f0e3");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { getDuration } from "../utils.js";
2
10
  import { inferEnvelopeSource, formatLogLine } from "./utils.js";
11
+ import "../../../_virtual/_sentry-release-injection-file.js";
3
12
  function formatTrace(event, envelopeHeader) {
4
13
  const source = inferEnvelopeSource(envelopeHeader, event);
5
14
  const transaction = event.transaction;
@@ -1 +1 @@
1
- {"version":3,"file":"traces.js","sources":["../../../../src/server/formatters/human/traces.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryTransactionEvent } from \"../../parser/index.ts\";\nimport { getDuration } from \"../utils.ts\";\nimport { formatLogLine, inferEnvelopeSource } from \"./utils.ts\";\n\n/**\n * Format a trace/transaction event with envelope headers for source inference\n */\nexport function formatTrace(event: SentryTransactionEvent, envelopeHeader: Envelope[0]): string[] {\n const source = inferEnvelopeSource(envelopeHeader, event);\n\n const transaction = event.transaction;\n const trace = event.contexts?.trace;\n\n let message = transaction || trace?.description || \"Transaction\";\n\n const op = trace?.op;\n if (op && op !== \"default\" && op !== \"unknown\") {\n message = `[${op}] ${message}`;\n }\n\n const duration = getDuration(event.timestamp, event.start_timestamp);\n if (duration !== undefined) {\n message += ` [${Math.round(duration)}ms]`;\n }\n\n const status = trace?.status;\n if (status && status !== \"ok\") {\n message += ` [${status}]`;\n }\n\n const spanCount = event.spans?.length;\n if (spanCount && spanCount > 0) {\n message += ` [${spanCount} span${spanCount === 1 ? \"\" : \"s\"}]`;\n }\n\n return [formatLogLine(event.timestamp, source, \"trace\", message)];\n}\n"],"names":[],"mappings":";;AAQO,SAAS,YAAY,OAA+B,gBAAuC;AAChG,QAAM,SAAS,oBAAoB,gBAAgB,KAAK;AAExD,QAAM,cAAc,MAAM;AAC1B,QAAM,QAAQ,MAAM,UAAU;AAE9B,MAAI,UAAU,eAAe,OAAO,eAAe;AAEnD,QAAM,KAAK,OAAO;AAClB,MAAI,MAAM,OAAO,aAAa,OAAO,WAAW;AAC9C,cAAU,IAAI,EAAE,KAAK,OAAO;AAAA,EAC9B;AAEA,QAAM,WAAW,YAAY,MAAM,WAAW,MAAM,eAAe;AACnE,MAAI,aAAa,QAAW;AAC1B,eAAW,KAAK,KAAK,MAAM,QAAQ,CAAC;AAAA,EACtC;AAEA,QAAM,SAAS,OAAO;AACtB,MAAI,UAAU,WAAW,MAAM;AAC7B,eAAW,KAAK,MAAM;AAAA,EACxB;AAEA,QAAM,YAAY,MAAM,OAAO;AAC/B,MAAI,aAAa,YAAY,GAAG;AAC9B,eAAW,KAAK,SAAS,QAAQ,cAAc,IAAI,KAAK,GAAG;AAAA,EAC7D;AAEA,SAAO,CAAC,cAAc,MAAM,WAAW,QAAQ,SAAS,OAAO,CAAC;AAClE;"}
1
+ {"version":3,"file":"traces.js","sources":["../../../../src/server/formatters/human/traces.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryTransactionEvent } from \"../../parser/index.ts\";\nimport { getDuration } from \"../utils.ts\";\nimport { formatLogLine, inferEnvelopeSource } from \"./utils.ts\";\n\n/**\n * Format a trace/transaction event with envelope headers for source inference\n */\nexport function formatTrace(event: SentryTransactionEvent, envelopeHeader: Envelope[0]): string[] {\n const source = inferEnvelopeSource(envelopeHeader, event);\n\n const transaction = event.transaction;\n const trace = event.contexts?.trace;\n\n let message = transaction || trace?.description || \"Transaction\";\n\n const op = trace?.op;\n if (op && op !== \"default\" && op !== \"unknown\") {\n message = `[${op}] ${message}`;\n }\n\n const duration = getDuration(event.timestamp, event.start_timestamp);\n if (duration !== undefined) {\n message += ` [${Math.round(duration)}ms]`;\n }\n\n const status = trace?.status;\n if (status && status !== \"ok\") {\n message += ` [${status}]`;\n }\n\n const spanCount = event.spans?.length;\n if (spanCount && spanCount > 0) {\n message += ` [${spanCount} span${spanCount === 1 ? \"\" : \"s\"}]`;\n }\n\n return [formatLogLine(event.timestamp, source, \"trace\", message)];\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAQO,SAAS,YAAY,OAA+B,gBAAuC;AAChG,QAAM,SAAS,oBAAoB,gBAAgB,KAAK;AAExD,QAAM,cAAc,MAAM;AAC1B,QAAM,QAAQ,MAAM,UAAU;AAE9B,MAAI,UAAU,eAAe,OAAO,eAAe;AAEnD,QAAM,KAAK,OAAO;AAClB,MAAI,MAAM,OAAO,aAAa,OAAO,WAAW;AAC9C,cAAU,IAAI,EAAE,KAAK,OAAO;AAAA,EAC9B;AAEA,QAAM,WAAW,YAAY,MAAM,WAAW,MAAM,eAAe;AACnE,MAAI,aAAa,QAAW;AAC1B,eAAW,KAAK,KAAK,MAAM,QAAQ,CAAC;AAAA,EACtC;AAEA,QAAM,SAAS,OAAO;AACtB,MAAI,UAAU,WAAW,MAAM;AAC7B,eAAW,KAAK,MAAM;AAAA,EACxB;AAEA,QAAM,YAAY,MAAM,OAAO;AAC/B,MAAI,aAAa,YAAY,GAAG;AAC9B,eAAW,KAAK,SAAS,QAAQ,cAAc,IAAI,KAAK,GAAG;AAAA,EAC7D;AAEA,SAAO,CAAC,cAAc,MAAM,WAAW,QAAQ,SAAS,OAAO,CAAC;AAClE;"}
@@ -1,5 +1,14 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "6383c656-eec8-4e07-aaa9-d46d61743a55", e._sentryDebugIdIdentifier = "sentry-dbid-6383c656-eec8-4e07-aaa9-d46d61743a55");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import chalk from "chalk";
2
10
  import { parseBrowserFromUserAgent } from "../../routes/stream/userAgent.js";
11
+ import "../../../_virtual/_sentry-release-injection-file.js";
3
12
  const SOURCE_TYPES = ["browser", "mobile", "server"];
4
13
  const LOG_LEVELS = ["error", "warning", "log", "info", "trace", "debug"];
5
14
  const SOURCE_COLORS = {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/server/formatters/human/utils.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport chalk from \"chalk\";\nimport { parseBrowserFromUserAgent } from \"../../routes/stream/userAgent.ts\";\n\nexport const SOURCE_TYPES = [\"browser\", \"mobile\", \"server\"] as const;\nexport type SourceType = (typeof SOURCE_TYPES)[number];\n\nexport const LOG_LEVELS = [\"error\", \"warning\", \"log\", \"info\", \"trace\", \"debug\"] as const;\nexport type LogLevel = (typeof LOG_LEVELS)[number];\n\nexport const SOURCE_COLORS: Record<SourceType, (text: string) => string> = {\n browser: chalk.yellow,\n mobile: chalk.blue,\n server: chalk.magenta,\n};\n\nexport const LOG_LEVEL_COLORS: Record<LogLevel, (text: string) => string> = {\n error: chalk.red.bold,\n warning: chalk.hex(\"#FFA500\"), // Orange\n log: chalk.white,\n info: chalk.cyan,\n trace: chalk.green,\n debug: chalk.dim,\n};\n\n/**\n * Helper to detect if a User-Agent string is from a browser\n */\nfunction isBrowserUserAgent(userAgent: string): boolean {\n const parsed = parseBrowserFromUserAgent(userAgent);\n return (\n parsed !== \"unknown\" &&\n (parsed.includes(\"Chrome\") || parsed.includes(\"Firefox\") || parsed.includes(\"Safari\") || parsed.includes(\"Edge\"))\n );\n}\n\n/**\n * Infer the source of an envelope as browser, mobile, or server using multiple signals\n * Priority order:\n * 1. Sender User-Agent (from HTTP request header)\n * 2. Platform & Runtime tags (from event payload)\n * 3. SDK name (fallback)\n *\n * Rules based on https://release-registry.services.sentry.io/sdks\n */\nexport function inferEnvelopeSource(envelopeHeader: Envelope[0], event?: any): SourceType {\n const sdkName = envelopeHeader?.sdk?.name || \"\";\n\n // 1. Mobile check (unchanged - already reliable from SDK name)\n // Mobile: Native mobile platforms and frameworks\n if (\n sdkName.includes(\"cocoa\") ||\n sdkName.includes(\"android\") ||\n sdkName.includes(\"react-native\") ||\n sdkName.includes(\"flutter\") ||\n sdkName.includes(\"capacitor\") ||\n sdkName.includes(\"cordova\") ||\n sdkName.includes(\"xamarin\") ||\n sdkName.includes(\"maui\") ||\n sdkName.includes(\"unity\") ||\n sdkName.includes(\"kotlin.kmp\")\n ) {\n return \"mobile\";\n }\n\n // 2. Sender User-Agent check\n const senderUserAgent = (envelopeHeader as any).__spotlight_sender_user_agent;\n if (senderUserAgent && typeof senderUserAgent === \"string\") {\n if (isBrowserUserAgent(senderUserAgent)) {\n return \"browser\";\n }\n // Server SDKs send server UAs like \"Node.js/*\", \"Python-urllib/*\", etc.\n // If we have a non-browser UA, we continue to further checks\n }\n\n // 3. Runtime tags check\n if (event?.tags?.runtime === \"browser\") {\n return \"browser\";\n }\n\n // 4. Platform & server-specific signals\n if (event?.contexts?.runtime?.name) {\n // Runtime context (node, CPython, etc.) indicates server\n return \"server\";\n }\n\n if (event?.server_name) {\n // server_name is a server-specific field\n return \"server\";\n }\n\n const platform = event?.platform;\n if (\n platform === \"node\" ||\n platform === \"python\" ||\n platform === \"ruby\" ||\n platform === \"php\" ||\n platform === \"java\" ||\n platform === \"go\" ||\n platform === \"rust\" ||\n platform === \"perl\" ||\n platform === \"elixir\" ||\n platform === \"csharp\" ||\n platform === \"dotnet\"\n ) {\n return \"server\";\n }\n\n // 5. SDK name check (existing logic as fallback)\n // Browser: JavaScript frameworks/libraries (excluding server/native runtimes and meta-frameworks)\n if (\n sdkName.startsWith(\"sentry.javascript.\") &&\n !sdkName.includes(\"node\") &&\n !sdkName.includes(\"bun\") &&\n !sdkName.includes(\"deno\") &&\n !sdkName.includes(\"electron\") &&\n !sdkName.includes(\"serverless\") &&\n !sdkName.includes(\"cloudflare\") &&\n !sdkName.includes(\"vercel-edge\") &&\n !sdkName.includes(\"wasm\") &&\n !sdkName.includes(\"opentelemetry\") &&\n !sdkName.includes(\"nextjs\") &&\n !sdkName.includes(\"remix\") &&\n !sdkName.includes(\"gatsby\") &&\n !sdkName.includes(\"astro\") &&\n !sdkName.includes(\"nuxt\") &&\n !sdkName.includes(\"sveltekit\") &&\n !sdkName.includes(\"solidstart\") &&\n !sdkName.includes(\"nestjs\") &&\n !sdkName.includes(\"tanstackstart\")\n ) {\n return \"browser\";\n }\n\n // Special case: Blazor WebAssembly runs in browser\n if (sdkName.includes(\"blazor.webassembly\")) {\n return \"browser\";\n }\n\n // Server: Everything else (node, python, ruby, go, php, java, dotnet, etc.)\n return \"server\";\n}\n\n/**\n * Format timestamp as local time HH:MM:SS\n */\nexport function formatLocalTime(timestamp?: number | string): string {\n let date: Date;\n\n if (!timestamp) {\n date = new Date();\n } else if (typeof timestamp === \"string\") {\n // Handle ISO string format (e.g., \"2023-11-22T16:23:50.406684Z\")\n date = new Date(timestamp);\n } else {\n // Handle Unix timestamp\n date = new Date(timestamp * 1000);\n }\n\n if (Number.isNaN(date.getTime())) {\n // placeholder with same width as valid timestamp for alignment in the logs\n return \"??:??:??\";\n }\n\n const hours = date.getHours().toString().padStart(2, \"0\");\n const minutes = date.getMinutes().toString().padStart(2, \"0\");\n const seconds = date.getSeconds().toString().padStart(2, \"0\");\n return `${hours}:${minutes}:${seconds}`;\n}\n\n/**\n * Padding helper for vertical alignment\n */\nexport function padLabel(label: string, width: number): string {\n return label.padEnd(width);\n}\n\n// Constants for consistent padding (adding brackets)\nexport const SOURCE_WIDTH = Math.max(...SOURCE_TYPES.map(s => `[${s.toUpperCase()}]`.length));\nexport const TYPE_WIDTH = Math.max(...LOG_LEVELS.map(l => `[${l.toUpperCase()}]`.length));\n\n/**\n * Colorize time with dim gray\n */\nexport function colorizeTime(time: string): string {\n return chalk.gray(time);\n}\n\n/**\n * Colorize source based on envelope source\n */\nexport function colorizeSource(source: string): string {\n const bracketed = `[${source}]`;\n const padded = padLabel(bracketed, SOURCE_WIDTH);\n const colorFn = SOURCE_COLORS[source as SourceType] || chalk.white;\n return colorFn(padded);\n}\n\n/**\n * Colorize event type\n */\nexport function colorizeType(type: string): string {\n const bracketed = `[${type.toUpperCase()}]`;\n const padded = padLabel(bracketed, TYPE_WIDTH);\n const colorFn = LOG_LEVEL_COLORS[type.toLowerCase() as LogLevel] || chalk.white;\n return colorFn(padded);\n}\n\n/**\n * Format a complete log line with proper alignment and colors\n */\nexport function formatLogLine(\n timestamp: number | string | undefined,\n source: SourceType,\n type: string,\n message: string,\n): string {\n const time = colorizeTime(formatLocalTime(timestamp));\n const coloredSource = colorizeSource(source);\n const coloredType = colorizeType(type);\n\n return `${time} ${coloredType} ${coloredSource} ${message}`;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../src/server/formatters/human/utils.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport chalk from \"chalk\";\nimport { parseBrowserFromUserAgent } from \"../../routes/stream/userAgent.ts\";\n\nexport const SOURCE_TYPES = [\"browser\", \"mobile\", \"server\"] as const;\nexport type SourceType = (typeof SOURCE_TYPES)[number];\n\nexport const LOG_LEVELS = [\"error\", \"warning\", \"log\", \"info\", \"trace\", \"debug\"] as const;\nexport type LogLevel = (typeof LOG_LEVELS)[number];\n\nexport const SOURCE_COLORS: Record<SourceType, (text: string) => string> = {\n browser: chalk.yellow,\n mobile: chalk.blue,\n server: chalk.magenta,\n};\n\nexport const LOG_LEVEL_COLORS: Record<LogLevel, (text: string) => string> = {\n error: chalk.red.bold,\n warning: chalk.hex(\"#FFA500\"), // Orange\n log: chalk.white,\n info: chalk.cyan,\n trace: chalk.green,\n debug: chalk.dim,\n};\n\n/**\n * Helper to detect if a User-Agent string is from a browser\n */\nfunction isBrowserUserAgent(userAgent: string): boolean {\n const parsed = parseBrowserFromUserAgent(userAgent);\n return (\n parsed !== \"unknown\" &&\n (parsed.includes(\"Chrome\") || parsed.includes(\"Firefox\") || parsed.includes(\"Safari\") || parsed.includes(\"Edge\"))\n );\n}\n\n/**\n * Infer the source of an envelope as browser, mobile, or server using multiple signals\n * Priority order:\n * 1. Sender User-Agent (from HTTP request header)\n * 2. Platform & Runtime tags (from event payload)\n * 3. SDK name (fallback)\n *\n * Rules based on https://release-registry.services.sentry.io/sdks\n */\nexport function inferEnvelopeSource(envelopeHeader: Envelope[0], event?: any): SourceType {\n const sdkName = envelopeHeader?.sdk?.name || \"\";\n\n // 1. Mobile check (unchanged - already reliable from SDK name)\n // Mobile: Native mobile platforms and frameworks\n if (\n sdkName.includes(\"cocoa\") ||\n sdkName.includes(\"android\") ||\n sdkName.includes(\"react-native\") ||\n sdkName.includes(\"flutter\") ||\n sdkName.includes(\"capacitor\") ||\n sdkName.includes(\"cordova\") ||\n sdkName.includes(\"xamarin\") ||\n sdkName.includes(\"maui\") ||\n sdkName.includes(\"unity\") ||\n sdkName.includes(\"kotlin.kmp\")\n ) {\n return \"mobile\";\n }\n\n // 2. Sender User-Agent check\n const senderUserAgent = (envelopeHeader as any).__spotlight_sender_user_agent;\n if (senderUserAgent && typeof senderUserAgent === \"string\") {\n if (isBrowserUserAgent(senderUserAgent)) {\n return \"browser\";\n }\n // Server SDKs send server UAs like \"Node.js/*\", \"Python-urllib/*\", etc.\n // If we have a non-browser UA, we continue to further checks\n }\n\n // 3. Runtime tags check\n if (event?.tags?.runtime === \"browser\") {\n return \"browser\";\n }\n\n // 4. Platform & server-specific signals\n if (event?.contexts?.runtime?.name) {\n // Runtime context (node, CPython, etc.) indicates server\n return \"server\";\n }\n\n if (event?.server_name) {\n // server_name is a server-specific field\n return \"server\";\n }\n\n const platform = event?.platform;\n if (\n platform === \"node\" ||\n platform === \"python\" ||\n platform === \"ruby\" ||\n platform === \"php\" ||\n platform === \"java\" ||\n platform === \"go\" ||\n platform === \"rust\" ||\n platform === \"perl\" ||\n platform === \"elixir\" ||\n platform === \"csharp\" ||\n platform === \"dotnet\"\n ) {\n return \"server\";\n }\n\n // 5. SDK name check (existing logic as fallback)\n // Browser: JavaScript frameworks/libraries (excluding server/native runtimes and meta-frameworks)\n if (\n sdkName.startsWith(\"sentry.javascript.\") &&\n !sdkName.includes(\"node\") &&\n !sdkName.includes(\"bun\") &&\n !sdkName.includes(\"deno\") &&\n !sdkName.includes(\"electron\") &&\n !sdkName.includes(\"serverless\") &&\n !sdkName.includes(\"cloudflare\") &&\n !sdkName.includes(\"vercel-edge\") &&\n !sdkName.includes(\"wasm\") &&\n !sdkName.includes(\"opentelemetry\") &&\n !sdkName.includes(\"nextjs\") &&\n !sdkName.includes(\"remix\") &&\n !sdkName.includes(\"gatsby\") &&\n !sdkName.includes(\"astro\") &&\n !sdkName.includes(\"nuxt\") &&\n !sdkName.includes(\"sveltekit\") &&\n !sdkName.includes(\"solidstart\") &&\n !sdkName.includes(\"nestjs\") &&\n !sdkName.includes(\"tanstackstart\")\n ) {\n return \"browser\";\n }\n\n // Special case: Blazor WebAssembly runs in browser\n if (sdkName.includes(\"blazor.webassembly\")) {\n return \"browser\";\n }\n\n // Server: Everything else (node, python, ruby, go, php, java, dotnet, etc.)\n return \"server\";\n}\n\n/**\n * Format timestamp as local time HH:MM:SS\n */\nexport function formatLocalTime(timestamp?: number | string): string {\n let date: Date;\n\n if (!timestamp) {\n date = new Date();\n } else if (typeof timestamp === \"string\") {\n // Handle ISO string format (e.g., \"2023-11-22T16:23:50.406684Z\")\n date = new Date(timestamp);\n } else {\n // Handle Unix timestamp\n date = new Date(timestamp * 1000);\n }\n\n if (Number.isNaN(date.getTime())) {\n // placeholder with same width as valid timestamp for alignment in the logs\n return \"??:??:??\";\n }\n\n const hours = date.getHours().toString().padStart(2, \"0\");\n const minutes = date.getMinutes().toString().padStart(2, \"0\");\n const seconds = date.getSeconds().toString().padStart(2, \"0\");\n return `${hours}:${minutes}:${seconds}`;\n}\n\n/**\n * Padding helper for vertical alignment\n */\nexport function padLabel(label: string, width: number): string {\n return label.padEnd(width);\n}\n\n// Constants for consistent padding (adding brackets)\nexport const SOURCE_WIDTH = Math.max(...SOURCE_TYPES.map(s => `[${s.toUpperCase()}]`.length));\nexport const TYPE_WIDTH = Math.max(...LOG_LEVELS.map(l => `[${l.toUpperCase()}]`.length));\n\n/**\n * Colorize time with dim gray\n */\nexport function colorizeTime(time: string): string {\n return chalk.gray(time);\n}\n\n/**\n * Colorize source based on envelope source\n */\nexport function colorizeSource(source: string): string {\n const bracketed = `[${source}]`;\n const padded = padLabel(bracketed, SOURCE_WIDTH);\n const colorFn = SOURCE_COLORS[source as SourceType] || chalk.white;\n return colorFn(padded);\n}\n\n/**\n * Colorize event type\n */\nexport function colorizeType(type: string): string {\n const bracketed = `[${type.toUpperCase()}]`;\n const padded = padLabel(bracketed, TYPE_WIDTH);\n const colorFn = LOG_LEVEL_COLORS[type.toLowerCase() as LogLevel] || chalk.white;\n return colorFn(padded);\n}\n\n/**\n * Format a complete log line with proper alignment and colors\n */\nexport function formatLogLine(\n timestamp: number | string | undefined,\n source: SourceType,\n type: string,\n message: string,\n): string {\n const time = colorizeTime(formatLocalTime(timestamp));\n const coloredSource = colorizeSource(source);\n const coloredType = colorizeType(type);\n\n return `${time} ${coloredType} ${coloredSource} ${message}`;\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,13 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "7ad72867-c8d2-42c3-96c1-7d776363cd64", e._sentryDebugIdIdentifier = "sentry-dbid-7ad72867-c8d2-42c3-96c1-7d776363cd64");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { logger } from "../logger.js";
10
+ import "../../_virtual/_sentry-release-injection-file.js";
2
11
  import "../parser/helpers.js";
3
12
  import "uuidv7";
4
13
  import "@sentry/node";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/server/formatters/index.ts"],"sourcesContent":["import type { Envelope, EnvelopeItem } from \"@sentry/core\";\nimport { logger } from \"../logger.ts\";\nimport type { SentryEvent } from \"../parser/types.ts\";\nimport type { FormatterRegistry } from \"./types.ts\";\n\nexport * from \"./types.ts\";\n\nexport { formatters as mdFormatters } from \"./md/index.ts\";\nexport { formatters as logfmtFormatters } from \"./logfmt/index.ts\";\nexport { formatters as jsonFormatters } from \"./json/index.ts\";\nexport { formatters as humanFormatters } from \"./human/index.ts\";\n\n/**\n * Generic function to get a formatter from registry and apply it\n */\nexport function applyFormatter<K extends keyof FormatterRegistry>(\n registry: FormatterRegistry,\n eventType: K,\n payload: EnvelopeItem[1],\n envelopeHeader: Envelope[0],\n): string[] {\n const entry = registry[eventType];\n const event = payload as SentryEvent;\n if (!entry.typeGuard(event)) {\n logger.warn(`Skipping event: type guard failed for ${eventType} (event.type=${(event as any).type})`);\n return [];\n }\n // Type assertion needed because TypeScript can't narrow the union type properly\n return entry.format(event as any, envelopeHeader);\n}\n"],"names":[],"mappings":";;;;;;AAeO,SAAS,eACd,UACA,WACA,SACA,gBACU;AACV,QAAM,QAAQ,SAAS,SAAS;AAChC,QAAM,QAAQ;AACd,MAAI,CAAC,MAAM,UAAU,KAAK,GAAG;AAC3B,WAAO,KAAK,yCAAyC,SAAS,gBAAiB,MAAc,IAAI,GAAG;AACpG,WAAO,CAAA;AAAA,EACT;AAEA,SAAO,MAAM,OAAO,OAAc,cAAc;AAClD;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/server/formatters/index.ts"],"sourcesContent":["import type { Envelope, EnvelopeItem } from \"@sentry/core\";\nimport { logger } from \"../logger.ts\";\nimport type { SentryEvent } from \"../parser/types.ts\";\nimport type { FormatterRegistry } from \"./types.ts\";\n\nexport * from \"./types.ts\";\n\nexport { formatters as mdFormatters } from \"./md/index.ts\";\nexport { formatters as logfmtFormatters } from \"./logfmt/index.ts\";\nexport { formatters as jsonFormatters } from \"./json/index.ts\";\nexport { formatters as humanFormatters } from \"./human/index.ts\";\n\n/**\n * Generic function to get a formatter from registry and apply it\n */\nexport function applyFormatter<K extends keyof FormatterRegistry>(\n registry: FormatterRegistry,\n eventType: K,\n payload: EnvelopeItem[1],\n envelopeHeader: Envelope[0],\n): string[] {\n const entry = registry[eventType];\n const event = payload as SentryEvent;\n if (!entry.typeGuard(event)) {\n logger.warn(`Skipping event: type guard failed for ${eventType} (event.type=${(event as any).type})`);\n return [];\n }\n // Type assertion needed because TypeScript can't narrow the union type properly\n return entry.format(event as any, envelopeHeader);\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAeO,SAAS,eACd,UACA,WACA,SACA,gBACU;AACV,QAAM,QAAQ,SAAS,SAAS;AAChC,QAAM,QAAQ;AACd,MAAI,CAAC,MAAM,UAAU,KAAK,GAAG;AAC3B,WAAO,KAAK,yCAAyC,SAAS,gBAAiB,MAAc,IAAI,GAAG;AACpG,WAAO,CAAA;AAAA,EACT;AAEA,SAAO,MAAM,OAAO,OAAc,cAAc;AAClD;"}
@@ -1,4 +1,13 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "5e1dce8a-1573-4bfa-b831-65b26db95a95", e._sentryDebugIdIdentifier = "sentry-dbid-5e1dce8a-1573-4bfa-b831-65b26db95a95");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { buildErrorData } from "../shared/data-builders.js";
10
+ import "../../../_virtual/_sentry-release-injection-file.js";
2
11
  function formatError(event, _envelopeHeader) {
3
12
  return [JSON.stringify(buildErrorData(event))];
4
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/json/errors.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryErrorEvent } from \"../../parser/index.ts\";\nimport { buildErrorData } from \"../shared/data-builders.ts\";\n\nexport function formatError(event: SentryErrorEvent, _envelopeHeader: Envelope[0]): string[] {\n return [JSON.stringify(buildErrorData(event))];\n}\n"],"names":[],"mappings":";AAIO,SAAS,YAAY,OAAyB,iBAAwC;AAC3F,SAAO,CAAC,KAAK,UAAU,eAAe,KAAK,CAAC,CAAC;AAC/C;"}
1
+ {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/json/errors.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryErrorEvent } from \"../../parser/index.ts\";\nimport { buildErrorData } from \"../shared/data-builders.ts\";\n\nexport function formatError(event: SentryErrorEvent, _envelopeHeader: Envelope[0]): string[] {\n return [JSON.stringify(buildErrorData(event))];\n}\n"],"names":[],"mappings":";;;;;;;;;;AAIO,SAAS,YAAY,OAAyB,iBAAwC;AAC3F,SAAO,CAAC,KAAK,UAAU,eAAe,KAAK,CAAC,CAAC;AAC/C;"}
@@ -1,7 +1,16 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "07c7f71c-5201-4f0b-ad81-eae990612a3f", e._sentryDebugIdIdentifier = "sentry-dbid-07c7f71c-5201-4f0b-ad81-eae990612a3f");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { isTraceEvent, isLogEvent, isErrorEvent } from "../../parser/helpers.js";
2
10
  import { formatError } from "./errors.js";
3
11
  import { formatLog } from "./logs.js";
4
12
  import { formatTrace } from "./traces.js";
13
+ import "../../../_virtual/_sentry-release-injection-file.js";
5
14
  const formatters = {
6
15
  event: { typeGuard: isErrorEvent, format: formatError },
7
16
  log: { typeGuard: isLogEvent, format: formatLog },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/server/formatters/json/index.ts"],"sourcesContent":["import { isErrorEvent, isLogEvent, isTraceEvent } from \"../../parser/helpers.ts\";\nimport type { FormatterRegistry } from \"../types.ts\";\nimport { formatError } from \"./errors.ts\";\nimport { formatLog } from \"./logs.ts\";\nimport { formatTrace } from \"./traces.ts\";\n\nexport const formatters: FormatterRegistry = {\n event: { typeGuard: isErrorEvent, format: formatError },\n log: { typeGuard: isLogEvent, format: formatLog },\n transaction: { typeGuard: isTraceEvent, format: formatTrace },\n};\n"],"names":[],"mappings":";;;;AAMO,MAAM,aAAgC;AAAA,EAC3C,OAAO,EAAE,WAAW,cAAc,QAAQ,YAAA;AAAA,EAC1C,KAAK,EAAE,WAAW,YAAY,QAAQ,UAAA;AAAA,EACtC,aAAa,EAAE,WAAW,cAAc,QAAQ,YAAA;AAClD;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/server/formatters/json/index.ts"],"sourcesContent":["import { isErrorEvent, isLogEvent, isTraceEvent } from \"../../parser/helpers.ts\";\nimport type { FormatterRegistry } from \"../types.ts\";\nimport { formatError } from \"./errors.ts\";\nimport { formatLog } from \"./logs.ts\";\nimport { formatTrace } from \"./traces.ts\";\n\nexport const formatters: FormatterRegistry = {\n event: { typeGuard: isErrorEvent, format: formatError },\n log: { typeGuard: isLogEvent, format: formatLog },\n transaction: { typeGuard: isTraceEvent, format: formatTrace },\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAMO,MAAM,aAAgC;AAAA,EAC3C,OAAO,EAAE,WAAW,cAAc,QAAQ,YAAA;AAAA,EAC1C,KAAK,EAAE,WAAW,YAAY,QAAQ,UAAA;AAAA,EACtC,aAAa,EAAE,WAAW,cAAc,QAAQ,YAAA;AAClD;"}
@@ -1,4 +1,13 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b1237a5d-f6db-42ba-9e7a-316218128179", e._sentryDebugIdIdentifier = "sentry-dbid-b1237a5d-f6db-42ba-9e7a-316218128179");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { buildLogData } from "../shared/data-builders.js";
10
+ import "../../../_virtual/_sentry-release-injection-file.js";
2
11
  function formatSingleLog(log) {
3
12
  return JSON.stringify(buildLogData(log));
4
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logs.js","sources":["../../../../src/server/formatters/json/logs.ts"],"sourcesContent":["import type { Envelope, SerializedLog } from \"@sentry/core\";\nimport type { SentryLogEvent } from \"../../parser/index.ts\";\nimport { buildLogData } from \"../shared/data-builders.ts\";\n\nfunction formatSingleLog(log: SerializedLog): string {\n return JSON.stringify(buildLogData(log));\n}\n\nexport function formatLog(event: SentryLogEvent, _envelopeHeader: Envelope[0]): string[] {\n return event.items.map(formatSingleLog);\n}\n"],"names":[],"mappings":";AAIA,SAAS,gBAAgB,KAA4B;AACnD,SAAO,KAAK,UAAU,aAAa,GAAG,CAAC;AACzC;AAEO,SAAS,UAAU,OAAuB,iBAAwC;AACvF,SAAO,MAAM,MAAM,IAAI,eAAe;AACxC;"}
1
+ {"version":3,"file":"logs.js","sources":["../../../../src/server/formatters/json/logs.ts"],"sourcesContent":["import type { Envelope, SerializedLog } from \"@sentry/core\";\nimport type { SentryLogEvent } from \"../../parser/index.ts\";\nimport { buildLogData } from \"../shared/data-builders.ts\";\n\nfunction formatSingleLog(log: SerializedLog): string {\n return JSON.stringify(buildLogData(log));\n}\n\nexport function formatLog(event: SentryLogEvent, _envelopeHeader: Envelope[0]): string[] {\n return event.items.map(formatSingleLog);\n}\n"],"names":[],"mappings":";;;;;;;;;;AAIA,SAAS,gBAAgB,KAA4B;AACnD,SAAO,KAAK,UAAU,aAAa,GAAG,CAAC;AACzC;AAEO,SAAS,UAAU,OAAuB,iBAAwC;AACvF,SAAO,MAAM,MAAM,IAAI,eAAe;AACxC;"}
@@ -1,4 +1,13 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b108a957-210f-4040-8160-94a2d86a3a31", e._sentryDebugIdIdentifier = "sentry-dbid-b108a957-210f-4040-8160-94a2d86a3a31");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { buildTraceData } from "../shared/data-builders.js";
10
+ import "../../../_virtual/_sentry-release-injection-file.js";
2
11
  function formatTrace(event, _envelopeHeader) {
3
12
  return [JSON.stringify(buildTraceData(event))];
4
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"traces.js","sources":["../../../../src/server/formatters/json/traces.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryTransactionEvent } from \"../../parser/index.ts\";\nimport { buildTraceData } from \"../shared/data-builders.ts\";\n\nexport function formatTrace(event: SentryTransactionEvent, _envelopeHeader: Envelope[0]): string[] {\n return [JSON.stringify(buildTraceData(event))];\n}\n"],"names":[],"mappings":";AAIO,SAAS,YAAY,OAA+B,iBAAwC;AACjG,SAAO,CAAC,KAAK,UAAU,eAAe,KAAK,CAAC,CAAC;AAC/C;"}
1
+ {"version":3,"file":"traces.js","sources":["../../../../src/server/formatters/json/traces.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport type { SentryTransactionEvent } from \"../../parser/index.ts\";\nimport { buildTraceData } from \"../shared/data-builders.ts\";\n\nexport function formatTrace(event: SentryTransactionEvent, _envelopeHeader: Envelope[0]): string[] {\n return [JSON.stringify(buildTraceData(event))];\n}\n"],"names":[],"mappings":";;;;;;;;;;AAIO,SAAS,YAAY,OAA+B,iBAAwC;AACjG,SAAO,CAAC,KAAK,UAAU,eAAe,KAAK,CAAC,CAAC;AAC/C;"}
@@ -1,5 +1,14 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "f37db638-7330-4322-a5cb-a95c2841183b", e._sentryDebugIdIdentifier = "sentry-dbid-f37db638-7330-4322-a5cb-a95c2841183b");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import logfmt from "logfmt";
2
10
  import { buildErrorData } from "../shared/data-builders.js";
11
+ import "../../../_virtual/_sentry-release-injection-file.js";
3
12
  function formatError(event, _envelopeHeader) {
4
13
  return [logfmt.stringify(buildErrorData(event))];
5
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/logfmt/errors.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport logfmt from \"logfmt\";\nimport type { SentryErrorEvent } from \"../../parser/index.ts\";\nimport { buildErrorData } from \"../shared/data-builders.ts\";\n\nexport function formatError(event: SentryErrorEvent, _envelopeHeader: Envelope[0]): string[] {\n return [logfmt.stringify(buildErrorData(event))];\n}\n"],"names":[],"mappings":";;AAKO,SAAS,YAAY,OAAyB,iBAAwC;AAC3F,SAAO,CAAC,OAAO,UAAU,eAAe,KAAK,CAAC,CAAC;AACjD;"}
1
+ {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/logfmt/errors.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport logfmt from \"logfmt\";\nimport type { SentryErrorEvent } from \"../../parser/index.ts\";\nimport { buildErrorData } from \"../shared/data-builders.ts\";\n\nexport function formatError(event: SentryErrorEvent, _envelopeHeader: Envelope[0]): string[] {\n return [logfmt.stringify(buildErrorData(event))];\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAKO,SAAS,YAAY,OAAyB,iBAAwC;AAC3F,SAAO,CAAC,OAAO,UAAU,eAAe,KAAK,CAAC,CAAC;AACjD;"}
@@ -1,7 +1,16 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "07c7f71c-5201-4f0b-ad81-eae990612a3f", e._sentryDebugIdIdentifier = "sentry-dbid-07c7f71c-5201-4f0b-ad81-eae990612a3f");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { isTraceEvent, isLogEvent, isErrorEvent } from "../../parser/helpers.js";
2
10
  import { formatError } from "./errors.js";
3
11
  import { formatLog } from "./logs.js";
4
12
  import { formatTrace } from "./traces.js";
13
+ import "../../../_virtual/_sentry-release-injection-file.js";
5
14
  const formatters = {
6
15
  event: { typeGuard: isErrorEvent, format: formatError },
7
16
  log: { typeGuard: isLogEvent, format: formatLog },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/server/formatters/logfmt/index.ts"],"sourcesContent":["import { isErrorEvent, isLogEvent, isTraceEvent } from \"../../parser/helpers.ts\";\nimport type { FormatterRegistry } from \"../types.ts\";\nimport { formatError } from \"./errors.ts\";\nimport { formatLog } from \"./logs.ts\";\nimport { formatTrace } from \"./traces.ts\";\n\nexport const formatters: FormatterRegistry = {\n event: { typeGuard: isErrorEvent, format: formatError },\n log: { typeGuard: isLogEvent, format: formatLog },\n transaction: { typeGuard: isTraceEvent, format: formatTrace },\n};\n"],"names":[],"mappings":";;;;AAMO,MAAM,aAAgC;AAAA,EAC3C,OAAO,EAAE,WAAW,cAAc,QAAQ,YAAA;AAAA,EAC1C,KAAK,EAAE,WAAW,YAAY,QAAQ,UAAA;AAAA,EACtC,aAAa,EAAE,WAAW,cAAc,QAAQ,YAAA;AAClD;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/server/formatters/logfmt/index.ts"],"sourcesContent":["import { isErrorEvent, isLogEvent, isTraceEvent } from \"../../parser/helpers.ts\";\nimport type { FormatterRegistry } from \"../types.ts\";\nimport { formatError } from \"./errors.ts\";\nimport { formatLog } from \"./logs.ts\";\nimport { formatTrace } from \"./traces.ts\";\n\nexport const formatters: FormatterRegistry = {\n event: { typeGuard: isErrorEvent, format: formatError },\n log: { typeGuard: isLogEvent, format: formatLog },\n transaction: { typeGuard: isTraceEvent, format: formatTrace },\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAMO,MAAM,aAAgC;AAAA,EAC3C,OAAO,EAAE,WAAW,cAAc,QAAQ,YAAA;AAAA,EAC1C,KAAK,EAAE,WAAW,YAAY,QAAQ,UAAA;AAAA,EACtC,aAAa,EAAE,WAAW,cAAc,QAAQ,YAAA;AAClD;"}
@@ -1,5 +1,14 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "8953ab35-2d69-4ad4-a4c3-faf7d9194b66", e._sentryDebugIdIdentifier = "sentry-dbid-8953ab35-2d69-4ad4-a4c3-faf7d9194b66");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import logfmt from "logfmt";
2
10
  import { formatTimestamp, mapFields } from "../utils.js";
11
+ import "../../../_virtual/_sentry-release-injection-file.js";
3
12
  function formatSingleLog(log) {
4
13
  const data = {
5
14
  timestamp: formatTimestamp(log.timestamp),
@@ -1 +1 @@
1
- {"version":3,"file":"logs.js","sources":["../../../../src/server/formatters/logfmt/logs.ts"],"sourcesContent":["import type { Envelope, SerializedLog } from \"@sentry/core\";\nimport logfmt from \"logfmt\";\nimport type { SentryLogEvent } from \"../../parser/index.ts\";\nimport { formatTimestamp, mapFields } from \"../utils.ts\";\n\nfunction formatSingleLog(log: SerializedLog): string {\n const data: Record<string, any> = {\n timestamp: formatTimestamp(log.timestamp),\n level: log.level,\n type: \"log\",\n };\n\n mapFields(log, data, {\n message: \"body\",\n trace_id: \"trace_id\",\n severity_number: \"severity_number\",\n });\n\n if (log.attributes) {\n for (const [key, attr] of Object.entries(log.attributes)) {\n data[key] = attr.value;\n }\n }\n\n return logfmt.stringify(data);\n}\n\nexport function formatLog(event: SentryLogEvent, _envelopeHeader: Envelope[0]): string[] {\n return event.items.map(formatSingleLog);\n}\n"],"names":[],"mappings":";;AAKA,SAAS,gBAAgB,KAA4B;AACnD,QAAM,OAA4B;AAAA,IAChC,WAAW,gBAAgB,IAAI,SAAS;AAAA,IACxC,OAAO,IAAI;AAAA,IACX,MAAM;AAAA,EAAA;AAGR,YAAU,KAAK,MAAM;AAAA,IACnB,SAAS;AAAA,IACT,UAAU;AAAA,IACV,iBAAiB;AAAA,EAAA,CAClB;AAED,MAAI,IAAI,YAAY;AAClB,eAAW,CAAC,KAAK,IAAI,KAAK,OAAO,QAAQ,IAAI,UAAU,GAAG;AACxD,WAAK,GAAG,IAAI,KAAK;AAAA,IACnB;AAAA,EACF;AAEA,SAAO,OAAO,UAAU,IAAI;AAC9B;AAEO,SAAS,UAAU,OAAuB,iBAAwC;AACvF,SAAO,MAAM,MAAM,IAAI,eAAe;AACxC;"}
1
+ {"version":3,"file":"logs.js","sources":["../../../../src/server/formatters/logfmt/logs.ts"],"sourcesContent":["import type { Envelope, SerializedLog } from \"@sentry/core\";\nimport logfmt from \"logfmt\";\nimport type { SentryLogEvent } from \"../../parser/index.ts\";\nimport { formatTimestamp, mapFields } from \"../utils.ts\";\n\nfunction formatSingleLog(log: SerializedLog): string {\n const data: Record<string, any> = {\n timestamp: formatTimestamp(log.timestamp),\n level: log.level,\n type: \"log\",\n };\n\n mapFields(log, data, {\n message: \"body\",\n trace_id: \"trace_id\",\n severity_number: \"severity_number\",\n });\n\n if (log.attributes) {\n for (const [key, attr] of Object.entries(log.attributes)) {\n data[key] = attr.value;\n }\n }\n\n return logfmt.stringify(data);\n}\n\nexport function formatLog(event: SentryLogEvent, _envelopeHeader: Envelope[0]): string[] {\n return event.items.map(formatSingleLog);\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAKA,SAAS,gBAAgB,KAA4B;AACnD,QAAM,OAA4B;AAAA,IAChC,WAAW,gBAAgB,IAAI,SAAS;AAAA,IACxC,OAAO,IAAI;AAAA,IACX,MAAM;AAAA,EAAA;AAGR,YAAU,KAAK,MAAM;AAAA,IACnB,SAAS;AAAA,IACT,UAAU;AAAA,IACV,iBAAiB;AAAA,EAAA,CAClB;AAED,MAAI,IAAI,YAAY;AAClB,eAAW,CAAC,KAAK,IAAI,KAAK,OAAO,QAAQ,IAAI,UAAU,GAAG;AACxD,WAAK,GAAG,IAAI,KAAK;AAAA,IACnB;AAAA,EACF;AAEA,SAAO,OAAO,UAAU,IAAI;AAC9B;AAEO,SAAS,UAAU,OAAuB,iBAAwC;AACvF,SAAO,MAAM,MAAM,IAAI,eAAe;AACxC;"}
@@ -1,5 +1,14 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "830c9775-5e29-4a08-a01e-0427210d1c3f", e._sentryDebugIdIdentifier = "sentry-dbid-830c9775-5e29-4a08-a01e-0427210d1c3f");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import logfmt from "logfmt";
2
10
  import { buildTraceData } from "../shared/data-builders.js";
11
+ import "../../../_virtual/_sentry-release-injection-file.js";
3
12
  function formatTrace(event, _envelopeHeader) {
4
13
  return [logfmt.stringify(buildTraceData(event))];
5
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"traces.js","sources":["../../../../src/server/formatters/logfmt/traces.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport logfmt from \"logfmt\";\nimport type { SentryTransactionEvent } from \"../../parser/index.ts\";\nimport { buildTraceData } from \"../shared/data-builders.ts\";\n\nexport function formatTrace(event: SentryTransactionEvent, _envelopeHeader: Envelope[0]): string[] {\n return [logfmt.stringify(buildTraceData(event))];\n}\n"],"names":[],"mappings":";;AAKO,SAAS,YAAY,OAA+B,iBAAwC;AACjG,SAAO,CAAC,OAAO,UAAU,eAAe,KAAK,CAAC,CAAC;AACjD;"}
1
+ {"version":3,"file":"traces.js","sources":["../../../../src/server/formatters/logfmt/traces.ts"],"sourcesContent":["import type { Envelope } from \"@sentry/core\";\nimport logfmt from \"logfmt\";\nimport type { SentryTransactionEvent } from \"../../parser/index.ts\";\nimport { buildTraceData } from \"../shared/data-builders.ts\";\n\nexport function formatTrace(event: SentryTransactionEvent, _envelopeHeader: Envelope[0]): string[] {\n return [logfmt.stringify(buildTraceData(event))];\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAKO,SAAS,YAAY,OAA+B,iBAAwC;AACjG,SAAO,CAAC,OAAO,UAAU,eAAe,KAAK,CAAC,CAAC;AACjD;"}
@@ -1,5 +1,14 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "5f66d754-68a9-4724-a081-63de435bc0a7", e._sentryDebugIdIdentifier = "sentry-dbid-5f66d754-68a9-4724-a081-63de435bc0a7");
6
+ } catch (e2) {
7
+ }
8
+ }();
1
9
  import { isErrorEvent } from "../../parser/helpers.js";
2
10
  import "uuidv7";
11
+ import "../../../_virtual/_sentry-release-injection-file.js";
3
12
  import { formatTimestamp } from "../utils.js";
4
13
  import { formatEventOutput } from "./event.js";
5
14
  function formatErrorEnvelope(container) {
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/md/errors.ts"],"sourcesContent":["import type { Envelope, EnvelopeItem } from \"@sentry/core\";\nimport type { z } from \"zod\";\nimport { type SentryErrorEvent, type SentryEvent, isErrorEvent } from \"../../parser/index.ts\";\nimport type { EventContainer } from \"../../utils/index.ts\";\nimport type { ErrorEventSchema } from \"../schema.ts\";\nimport { formatTimestamp } from \"../utils.ts\";\nimport { formatEventOutput } from \"./event.ts\";\n\nexport function formatErrorEnvelope(container: EventContainer) {\n const processedEnvelope = container.getParsedEnvelope();\n\n const {\n envelope: [envelopeHeader, items],\n } = processedEnvelope;\n\n const formatted: string[] = [];\n for (const item of items) {\n const [{ type }, payload] = item;\n\n if (type === \"event\" && isErrorEvent(payload as SentryEvent)) {\n formatted.push(...formatError(payload, envelopeHeader));\n }\n }\n\n return formatted;\n}\n\nexport function processErrorEvent(event: any): z.infer<typeof ErrorEventSchema> {\n const entries: z.infer<typeof ErrorEventSchema>[\"entries\"] = [];\n\n if (event.exception) {\n entries.push({\n type: \"exception\",\n data: event.exception,\n });\n }\n\n if (event.request) {\n entries.push({\n type: \"request\",\n data: event.request,\n });\n }\n\n if (event.breadcrumbs) {\n entries.push({\n type: \"breadcrumbs\",\n data: event.breadcrumbs,\n });\n }\n\n if (event.spans) {\n entries.push({\n type: \"spans\",\n data: event.spans,\n });\n }\n\n if (event.threads) {\n entries.push({\n type: \"threads\",\n data: event.threads,\n });\n }\n\n const message = typeof event.message === \"string\" ? event.message : (event.message?.formatted ?? \"\");\n\n return {\n message,\n id: event.event_id ?? \"\",\n type: \"error\" as const,\n culprit: event.culprit ?? null,\n tags: Object.entries(event.tags ?? {}).map(([key, value]) => ({\n key,\n value: String(value),\n })),\n dateCreated: formatTimestamp(event.timestamp),\n title: message,\n entries,\n contexts: event.contexts as any,\n platform: event.platform,\n };\n}\n\n/**\n * Format an error event to markdown string\n */\nexport function formatError(payload: EnvelopeItem[1], _envelopeHeader: Envelope[0]): string[] {\n const event = payload as SentryErrorEvent;\n return [formatEventOutput(processErrorEvent(event))];\n}\n"],"names":[],"mappings":";;;;AAQO,SAAS,oBAAoB,WAA2B;AAC7D,QAAM,oBAAoB,UAAU,kBAAA;AAEpC,QAAM;AAAA,IACJ,UAAU,CAAC,gBAAgB,KAAK;AAAA,EAAA,IAC9B;AAEJ,QAAM,YAAsB,CAAA;AAC5B,aAAW,QAAQ,OAAO;AACxB,UAAM,CAAC,EAAE,QAAQ,OAAO,IAAI;AAE5B,QAAI,SAAS,WAAW,aAAa,OAAsB,GAAG;AAC5D,gBAAU,KAAK,GAAG,YAAY,OAAuB,CAAC;AAAA,IACxD;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,kBAAkB,OAA8C;AAC9E,QAAM,UAAuD,CAAA;AAE7D,MAAI,MAAM,WAAW;AACnB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,aAAa;AACrB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,OAAO;AACf,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,QAAM,UAAU,OAAO,MAAM,YAAY,WAAW,MAAM,UAAW,MAAM,SAAS,aAAa;AAEjG,SAAO;AAAA,IACL;AAAA,IACA,IAAI,MAAM,YAAY;AAAA,IACtB,MAAM;AAAA,IACN,SAAS,MAAM,WAAW;AAAA,IAC1B,MAAM,OAAO,QAAQ,MAAM,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO;AAAA,MAC5D;AAAA,MACA,OAAO,OAAO,KAAK;AAAA,IAAA,EACnB;AAAA,IACF,aAAa,gBAAgB,MAAM,SAAS;AAAA,IAC5C,OAAO;AAAA,IACP;AAAA,IACA,UAAU,MAAM;AAAA,IAChB,UAAU,MAAM;AAAA,EAAA;AAEpB;AAKO,SAAS,YAAY,SAA0B,iBAAwC;AAC5F,QAAM,QAAQ;AACd,SAAO,CAAC,kBAAkB,kBAAkB,KAAK,CAAC,CAAC;AACrD;"}
1
+ {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/md/errors.ts"],"sourcesContent":["import type { Envelope, EnvelopeItem } from \"@sentry/core\";\nimport type { z } from \"zod\";\nimport { type SentryErrorEvent, type SentryEvent, isErrorEvent } from \"../../parser/index.ts\";\nimport type { EventContainer } from \"../../utils/index.ts\";\nimport type { ErrorEventSchema } from \"../schema.ts\";\nimport { formatTimestamp } from \"../utils.ts\";\nimport { formatEventOutput } from \"./event.ts\";\n\nexport function formatErrorEnvelope(container: EventContainer) {\n const processedEnvelope = container.getParsedEnvelope();\n\n const {\n envelope: [envelopeHeader, items],\n } = processedEnvelope;\n\n const formatted: string[] = [];\n for (const item of items) {\n const [{ type }, payload] = item;\n\n if (type === \"event\" && isErrorEvent(payload as SentryEvent)) {\n formatted.push(...formatError(payload, envelopeHeader));\n }\n }\n\n return formatted;\n}\n\nexport function processErrorEvent(event: any): z.infer<typeof ErrorEventSchema> {\n const entries: z.infer<typeof ErrorEventSchema>[\"entries\"] = [];\n\n if (event.exception) {\n entries.push({\n type: \"exception\",\n data: event.exception,\n });\n }\n\n if (event.request) {\n entries.push({\n type: \"request\",\n data: event.request,\n });\n }\n\n if (event.breadcrumbs) {\n entries.push({\n type: \"breadcrumbs\",\n data: event.breadcrumbs,\n });\n }\n\n if (event.spans) {\n entries.push({\n type: \"spans\",\n data: event.spans,\n });\n }\n\n if (event.threads) {\n entries.push({\n type: \"threads\",\n data: event.threads,\n });\n }\n\n const message = typeof event.message === \"string\" ? event.message : (event.message?.formatted ?? \"\");\n\n return {\n message,\n id: event.event_id ?? \"\",\n type: \"error\" as const,\n culprit: event.culprit ?? null,\n tags: Object.entries(event.tags ?? {}).map(([key, value]) => ({\n key,\n value: String(value),\n })),\n dateCreated: formatTimestamp(event.timestamp),\n title: message,\n entries,\n contexts: event.contexts as any,\n platform: event.platform,\n };\n}\n\n/**\n * Format an error event to markdown string\n */\nexport function formatError(payload: EnvelopeItem[1], _envelopeHeader: Envelope[0]): string[] {\n const event = payload as SentryErrorEvent;\n return [formatEventOutput(processErrorEvent(event))];\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAQO,SAAS,oBAAoB,WAA2B;AAC7D,QAAM,oBAAoB,UAAU,kBAAA;AAEpC,QAAM;AAAA,IACJ,UAAU,CAAC,gBAAgB,KAAK;AAAA,EAAA,IAC9B;AAEJ,QAAM,YAAsB,CAAA;AAC5B,aAAW,QAAQ,OAAO;AACxB,UAAM,CAAC,EAAE,QAAQ,OAAO,IAAI;AAE5B,QAAI,SAAS,WAAW,aAAa,OAAsB,GAAG;AAC5D,gBAAU,KAAK,GAAG,YAAY,OAAuB,CAAC;AAAA,IACxD;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,kBAAkB,OAA8C;AAC9E,QAAM,UAAuD,CAAA;AAE7D,MAAI,MAAM,WAAW;AACnB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,aAAa;AACrB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,OAAO;AACf,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,QAAM,UAAU,OAAO,MAAM,YAAY,WAAW,MAAM,UAAW,MAAM,SAAS,aAAa;AAEjG,SAAO;AAAA,IACL;AAAA,IACA,IAAI,MAAM,YAAY;AAAA,IACtB,MAAM;AAAA,IACN,SAAS,MAAM,WAAW;AAAA,IAC1B,MAAM,OAAO,QAAQ,MAAM,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO;AAAA,MAC5D;AAAA,MACA,OAAO,OAAO,KAAK;AAAA,IAAA,EACnB;AAAA,IACF,aAAa,gBAAgB,MAAM,SAAS;AAAA,IAC5C,OAAO;AAAA,IACP;AAAA,IACA,UAAU,MAAM;AAAA,IAChB,UAAU,MAAM;AAAA,EAAA;AAEpB;AAKO,SAAS,YAAY,SAA0B,iBAAwC;AAC5F,QAAM,QAAQ;AACd,SAAO,CAAC,kBAAkB,kBAAkB,KAAK,CAAC,CAAC;AACrD;"}
@@ -1,3 +1,12 @@
1
+ ;
2
+ !function() {
3
+ try {
4
+ var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "82cfb5f9-e0dd-4c38-af9a-ccf50e456c77", e._sentryDebugIdIdentifier = "sentry-dbid-82cfb5f9-e0dd-4c38-af9a-ccf50e456c77");
6
+ } catch (e2) {
7
+ }
8
+ }();
9
+ import "../../../_virtual/_sentry-release-injection-file.js";
1
10
  const LANGUAGE_EXTENSIONS = {
2
11
  ".java": "java",
3
12
  ".py": "python",