@spotlightjs/spotlight 4.5.1 → 4.6.0

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 (650) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +9 -0
  2. package/dist/_virtual/_commonjsHelpers.js.map +1 -0
  3. package/dist/_virtual/cache.js +5 -0
  4. package/dist/_virtual/cache.js.map +1 -0
  5. package/dist/_virtual/index.js +5 -0
  6. package/dist/_virtual/index.js.map +1 -0
  7. package/dist/_virtual/re.js +5 -0
  8. package/dist/_virtual/re.js.map +1 -0
  9. package/dist/_virtual/uri.all.js +5 -0
  10. package/dist/_virtual/uri.all.js.map +1 -0
  11. package/dist/bootstrap.d.ts +0 -0
  12. package/dist/electron-index.d.ts +1 -0
  13. package/dist/index.d.ts +13 -0
  14. package/dist/instrument.js +74 -0
  15. package/dist/instrument.js.map +1 -0
  16. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js +233 -0
  17. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js.map +1 -0
  18. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js +56 -0
  19. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js.map +1 -0
  20. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +188 -0
  21. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +1 -0
  22. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js +596 -0
  23. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +1 -0
  24. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js +68 -0
  25. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js.map +1 -0
  26. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +383 -0
  27. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +1 -0
  28. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js +33 -0
  29. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js.map +1 -0
  30. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +1037 -0
  31. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +1 -0
  32. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js +357 -0
  33. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js.map +1 -0
  34. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js +21 -0
  35. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js.map +1 -0
  36. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js +65 -0
  37. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js.map +1 -0
  38. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js +28 -0
  39. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js.map +1 -0
  40. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js +110 -0
  41. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js.map +1 -0
  42. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js +279 -0
  43. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js.map +1 -0
  44. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js +219 -0
  45. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js.map +1 -0
  46. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js +92 -0
  47. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js.map +1 -0
  48. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js +10 -0
  49. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js.map +1 -0
  50. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/ucs2length.js +16 -0
  51. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/ucs2length.js.map +1 -0
  52. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js +183 -0
  53. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js.map +1 -0
  54. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js +48 -0
  55. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js.map +1 -0
  56. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js +39 -0
  57. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js.map +1 -0
  58. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js +151 -0
  59. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js.map +1 -0
  60. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js +81 -0
  61. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js.map +1 -0
  62. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js +86 -0
  63. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js.map +1 -0
  64. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js +81 -0
  65. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js.map +1 -0
  66. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js +43 -0
  67. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js.map +1 -0
  68. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js +74 -0
  69. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js.map +1 -0
  70. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js +17 -0
  71. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js.map +1 -0
  72. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js +54 -0
  73. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js.map +1 -0
  74. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js +79 -0
  75. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js.map +1 -0
  76. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js +221 -0
  77. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js.map +1 -0
  78. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js +162 -0
  79. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js.map +1 -0
  80. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js +63 -0
  81. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js.map +1 -0
  82. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js +148 -0
  83. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js.map +1 -0
  84. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js +101 -0
  85. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js.map +1 -0
  86. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js +58 -0
  87. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js.map +1 -0
  88. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js +138 -0
  89. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js.map +1 -0
  90. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js +81 -0
  91. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js.map +1 -0
  92. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js +86 -0
  93. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js.map +1 -0
  94. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js +72 -0
  95. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js.map +1 -0
  96. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js +76 -0
  97. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js.map +1 -0
  98. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js +313 -0
  99. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js.map +1 -0
  100. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js +75 -0
  101. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js.map +1 -0
  102. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js +125 -0
  103. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js.map +1 -0
  104. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js +254 -0
  105. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js.map +1 -0
  106. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js +86 -0
  107. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js.map +1 -0
  108. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js +455 -0
  109. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js.map +1 -0
  110. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js +99 -0
  111. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js.map +1 -0
  112. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/data.json.js +41 -0
  113. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/data.json.js.map +1 -0
  114. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/json-schema-draft-07.json.js +257 -0
  115. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/json-schema-draft-07.json.js.map +1 -0
  116. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +32 -0
  117. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js.map +1 -0
  118. package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js +53 -0
  119. package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js.map +1 -0
  120. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/helper/streaming/sse.js +24 -0
  121. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/helper/streaming/sse.js.map +1 -0
  122. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/middleware/cors/index.js +87 -0
  123. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/middleware/cors/index.js.map +1 -0
  124. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/html.js +35 -0
  125. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/html.js.map +1 -0
  126. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/stream.js +69 -0
  127. package/dist/node_modules/.pnpm/hono@4.10.3/node_modules/hono/dist/utils/stream.js.map +1 -0
  128. package/dist/node_modules/.pnpm/json-schema-traverse@0.4.1/node_modules/json-schema-traverse/index.js +83 -0
  129. package/dist/node_modules/.pnpm/json-schema-traverse@0.4.1/node_modules/json-schema-traverse/index.js.map +1 -0
  130. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/comparator.js +123 -0
  131. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/comparator.js.map +1 -0
  132. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/range.js +388 -0
  133. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/range.js.map +1 -0
  134. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/semver.js +277 -0
  135. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/classes/semver.js.map +1 -0
  136. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/clean.js +11 -0
  137. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/clean.js.map +1 -0
  138. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/cmp.js +53 -0
  139. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/cmp.js.map +1 -0
  140. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/coerce.js +46 -0
  141. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/coerce.js.map +1 -0
  142. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-build.js +12 -0
  143. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-build.js.map +1 -0
  144. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-loose.js +8 -0
  145. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare-loose.js.map +1 -0
  146. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare.js +8 -0
  147. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/compare.js.map +1 -0
  148. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/diff.js +42 -0
  149. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/diff.js.map +1 -0
  150. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/eq.js +8 -0
  151. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/eq.js.map +1 -0
  152. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gt.js +8 -0
  153. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gt.js.map +1 -0
  154. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gte.js +8 -0
  155. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/gte.js.map +1 -0
  156. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/inc.js +22 -0
  157. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/inc.js.map +1 -0
  158. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lt.js +8 -0
  159. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lt.js.map +1 -0
  160. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lte.js +8 -0
  161. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/lte.js.map +1 -0
  162. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/major.js +8 -0
  163. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/major.js.map +1 -0
  164. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/minor.js +8 -0
  165. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/minor.js.map +1 -0
  166. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/neq.js +8 -0
  167. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/neq.js.map +1 -0
  168. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/parse.js +20 -0
  169. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/parse.js.map +1 -0
  170. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/patch.js +8 -0
  171. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/patch.js.map +1 -0
  172. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/prerelease.js +11 -0
  173. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/prerelease.js.map +1 -0
  174. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rcompare.js +8 -0
  175. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rcompare.js.map +1 -0
  176. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rsort.js +8 -0
  177. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/rsort.js.map +1 -0
  178. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/satisfies.js +15 -0
  179. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/satisfies.js.map +1 -0
  180. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/sort.js +8 -0
  181. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/sort.js.map +1 -0
  182. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/valid.js +11 -0
  183. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/functions/valid.js.map +1 -0
  184. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/index.js +135 -0
  185. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/index.js.map +1 -0
  186. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/constants.js +29 -0
  187. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/constants.js.map +1 -0
  188. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/debug.js +7 -0
  189. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/debug.js.map +1 -0
  190. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/identifiers.js +22 -0
  191. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/identifiers.js.map +1 -0
  192. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/lrucache.js +35 -0
  193. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/lrucache.js.map +1 -0
  194. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/parse-options.js +16 -0
  195. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/parse-options.js.map +1 -0
  196. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/re.js +91 -0
  197. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/internal/re.js.map +1 -0
  198. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/gtr.js +8 -0
  199. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/gtr.js.map +1 -0
  200. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/intersects.js +12 -0
  201. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/intersects.js.map +1 -0
  202. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/ltr.js +8 -0
  203. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/ltr.js.map +1 -0
  204. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/max-satisfying.js +28 -0
  205. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/max-satisfying.js.map +1 -0
  206. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-satisfying.js +28 -0
  207. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-satisfying.js.map +1 -0
  208. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-version.js +57 -0
  209. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/min-version.js.map +1 -0
  210. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/outside.js +74 -0
  211. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/outside.js.map +1 -0
  212. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/simplify.js +49 -0
  213. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/simplify.js.map +1 -0
  214. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/subset.js +163 -0
  215. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/subset.js.map +1 -0
  216. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/to-comparators.js +8 -0
  217. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/to-comparators.js.map +1 -0
  218. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/valid.js +14 -0
  219. package/dist/node_modules/.pnpm/semver@7.7.3/node_modules/semver/ranges/valid.js.map +1 -0
  220. package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js +1027 -0
  221. package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js.map +1 -0
  222. 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 +38 -0
  223. 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 -0
  224. 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 +24 -0
  225. 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 -0
  226. 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 +19 -0
  227. 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 -0
  228. 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 +12 -0
  229. 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 -0
  230. 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 +62 -0
  231. 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 -0
  232. 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 +19 -0
  233. 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 -0
  234. 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 +29 -0
  235. 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 -0
  236. 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 +49 -0
  237. 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 -0
  238. 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 +9 -0
  239. 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 -0
  240. 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
  241. 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 -0
  242. 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
  243. 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 -0
  244. 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 +62 -0
  245. 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 -0
  246. 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 +11 -0
  247. 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 -0
  248. 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 +9 -0
  249. 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 -0
  250. 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 +10 -0
  251. 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 -0
  252. 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 +45 -0
  253. 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 -0
  254. 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 +22 -0
  255. 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 -0
  256. 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 +30 -0
  257. 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 -0
  258. 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 +16 -0
  259. 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 -0
  260. 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 +13 -0
  261. 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 -0
  262. 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 +12 -0
  263. 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 -0
  264. 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 +36 -0
  265. 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 -0
  266. 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 +52 -0
  267. 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 -0
  268. 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 +73 -0
  269. 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 -0
  270. 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 +23 -0
  271. 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 -0
  272. 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 +23 -0
  273. 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 -0
  274. 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
  275. 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 -0
  276. 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
  277. 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 -0
  278. 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 +59 -0
  279. 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 -0
  280. 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 +24 -0
  281. 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 -0
  282. 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 +322 -0
  283. 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 -0
  284. 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 +31 -0
  285. 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 -0
  286. 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 +10 -0
  287. 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 -0
  288. 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 +72 -0
  289. 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 -0
  290. 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
  291. 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 -0
  292. 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 +109 -0
  293. 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 -0
  294. 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 +67 -0
  295. 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 -0
  296. package/dist/run.d.ts +0 -1
  297. package/dist/run.js +22 -51777
  298. package/dist/run.js.map +1 -0
  299. package/dist/sentry-config.d.ts +7 -0
  300. package/dist/sentry-config.js +11 -0
  301. package/dist/sentry-config.js.map +1 -0
  302. package/dist/server/cli/help.d.ts +1 -0
  303. package/dist/server/cli/help.js +38 -0
  304. package/dist/server/cli/help.js.map +1 -0
  305. package/dist/server/cli/mcp.d.ts +2 -0
  306. package/dist/server/cli/mcp.js +105 -0
  307. package/dist/server/cli/mcp.js.map +1 -0
  308. package/dist/server/cli/run.d.ts +2 -0
  309. package/dist/server/cli/run.js +271 -0
  310. package/dist/server/cli/run.js.map +1 -0
  311. package/dist/server/cli/server.d.ts +2 -0
  312. package/dist/server/cli/server.js +13 -0
  313. package/dist/server/cli/server.js.map +1 -0
  314. package/dist/server/cli/tail.d.ts +8 -0
  315. package/dist/server/cli/tail.js +97 -0
  316. package/dist/server/cli/tail.js.map +1 -0
  317. package/dist/server/cli.d.ts +16 -0
  318. package/dist/server/cli.js +120 -0
  319. package/dist/server/cli.js.map +1 -0
  320. package/dist/server/constants.d.ts +3 -0
  321. package/dist/server/constants.js +7 -0
  322. package/dist/server/constants.js.map +1 -0
  323. package/dist/server/formatters/human/errors.d.ts +6 -0
  324. package/dist/server/formatters/human/errors.js +28 -0
  325. package/dist/server/formatters/human/errors.js.map +1 -0
  326. package/dist/server/formatters/human/index.d.ts +2 -0
  327. package/dist/server/formatters/human/index.js +13 -0
  328. package/dist/server/formatters/human/index.js.map +1 -0
  329. package/dist/server/formatters/human/logs.d.ts +6 -0
  330. package/dist/server/formatters/human/logs.js +23 -0
  331. package/dist/server/formatters/human/logs.js.map +1 -0
  332. package/dist/server/formatters/human/traces.d.ts +6 -0
  333. package/dist/server/formatters/human/traces.js +29 -0
  334. package/dist/server/formatters/human/traces.js.map +1 -0
  335. package/dist/server/formatters/human/utils.d.ts +43 -0
  336. package/dist/server/formatters/human/utils.js +113 -0
  337. package/dist/server/formatters/human/utils.js.map +1 -0
  338. package/dist/server/formatters/index.d.ts +11 -0
  339. package/dist/server/formatters/index.js +19 -0
  340. package/dist/server/formatters/index.js.map +1 -0
  341. package/dist/server/formatters/json/errors.d.ts +3 -0
  342. package/dist/server/formatters/json/errors.js +8 -0
  343. package/dist/server/formatters/json/errors.js.map +1 -0
  344. package/dist/server/formatters/json/index.d.ts +2 -0
  345. package/dist/server/formatters/json/index.js +13 -0
  346. package/dist/server/formatters/json/index.js.map +1 -0
  347. package/dist/server/formatters/json/logs.d.ts +3 -0
  348. package/dist/server/formatters/json/logs.js +11 -0
  349. package/dist/server/formatters/json/logs.js.map +1 -0
  350. package/dist/server/formatters/json/traces.d.ts +3 -0
  351. package/dist/server/formatters/json/traces.js +8 -0
  352. package/dist/server/formatters/json/traces.js.map +1 -0
  353. package/dist/server/formatters/logfmt/errors.d.ts +3 -0
  354. package/dist/server/formatters/logfmt/errors.js +9 -0
  355. package/dist/server/formatters/logfmt/errors.js.map +1 -0
  356. package/dist/server/formatters/logfmt/index.d.ts +2 -0
  357. package/dist/server/formatters/logfmt/index.js +13 -0
  358. package/dist/server/formatters/logfmt/index.js.map +1 -0
  359. package/dist/server/formatters/logfmt/logs.d.ts +3 -0
  360. package/dist/server/formatters/logfmt/logs.js +27 -0
  361. package/dist/server/formatters/logfmt/logs.js.map +1 -0
  362. package/dist/server/formatters/logfmt/traces.d.ts +3 -0
  363. package/dist/server/formatters/logfmt/traces.js +9 -0
  364. package/dist/server/formatters/logfmt/traces.js.map +1 -0
  365. package/dist/server/formatters/md/errors.d.ts +10 -0
  366. package/dist/server/formatters/md/errors.js +77 -0
  367. package/dist/server/formatters/md/errors.js.map +1 -0
  368. package/dist/server/formatters/md/event.d.ts +11 -0
  369. package/dist/server/formatters/md/event.js +362 -0
  370. package/dist/server/formatters/md/event.js.map +1 -0
  371. package/dist/server/formatters/md/index.d.ts +2 -0
  372. package/dist/server/formatters/md/index.js +13 -0
  373. package/dist/server/formatters/md/index.js.map +1 -0
  374. package/dist/server/formatters/md/logs.d.ts +7 -0
  375. package/dist/server/formatters/md/logs.js +39 -0
  376. package/dist/server/formatters/md/logs.js.map +1 -0
  377. package/dist/server/formatters/md/traces.d.ts +87 -0
  378. package/dist/server/formatters/md/traces.js +300 -0
  379. package/dist/server/formatters/md/traces.js.map +1 -0
  380. package/dist/server/formatters/schema.d.ts +6810 -0
  381. package/dist/server/formatters/shared/data-builders.d.ts +15 -0
  382. package/dist/server/formatters/shared/data-builders.js +120 -0
  383. package/dist/server/formatters/shared/data-builders.js.map +1 -0
  384. package/dist/server/formatters/types.d.ts +33 -0
  385. package/dist/server/formatters/types.js +5 -0
  386. package/dist/server/formatters/types.js.map +1 -0
  387. package/dist/server/formatters/utils.d.ts +25 -0
  388. package/dist/server/formatters/utils.js +46 -0
  389. package/dist/server/formatters/utils.js.map +1 -0
  390. package/dist/server/handlers/fileToServe.d.ts +2 -0
  391. package/dist/server/handlers/fileToServe.js +27 -0
  392. package/dist/server/handlers/fileToServe.js.map +1 -0
  393. package/dist/server/handlers/index.d.ts +1 -0
  394. package/dist/server/logger.d.ts +5 -0
  395. package/dist/server/logger.js +31 -0
  396. package/dist/server/logger.js.map +1 -0
  397. package/dist/server/main.d.ts +6 -0
  398. package/dist/server/main.js +175 -0
  399. package/dist/server/main.js.map +1 -0
  400. package/dist/server/mcp/constants.d.ts +3 -0
  401. package/dist/server/mcp/constants.js +79 -0
  402. package/dist/server/mcp/constants.js.map +1 -0
  403. package/dist/server/mcp/mcp.d.ts +31 -0
  404. package/dist/server/mcp/mcp.js +392 -0
  405. package/dist/server/mcp/mcp.js.map +1 -0
  406. package/dist/server/messageBuffer.d.ts +40 -0
  407. package/dist/server/messageBuffer.js +279 -0
  408. package/dist/server/messageBuffer.js.map +1 -0
  409. package/dist/server/parser/helpers.d.ts +10 -0
  410. package/dist/server/parser/helpers.js +32 -0
  411. package/dist/server/parser/helpers.js.map +1 -0
  412. package/dist/server/parser/index.d.ts +3 -0
  413. package/dist/server/parser/processEnvelope.d.ts +17 -0
  414. package/dist/server/parser/processEnvelope.js +86 -0
  415. package/dist/server/parser/processEnvelope.js.map +1 -0
  416. package/dist/server/parser/types.d.ts +198 -0
  417. package/dist/server/routes/clear.d.ts +3 -0
  418. package/dist/server/routes/clear.js +15 -0
  419. package/dist/server/routes/clear.js.map +1 -0
  420. package/dist/server/routes/contextlines/index.d.ts +3 -0
  421. package/dist/server/routes/contextlines/index.js +44 -0
  422. package/dist/server/routes/contextlines/index.js.map +1 -0
  423. package/dist/server/routes/contextlines/utils.d.ts +20 -0
  424. package/dist/server/routes/contextlines/utils.js +83 -0
  425. package/dist/server/routes/contextlines/utils.js.map +1 -0
  426. package/dist/server/routes/health.d.ts +3 -0
  427. package/dist/server/routes/health.js +7 -0
  428. package/dist/server/routes/health.js.map +1 -0
  429. package/dist/server/routes/index.d.ts +3 -0
  430. package/dist/server/routes/index.js +19 -0
  431. package/dist/server/routes/index.js.map +1 -0
  432. package/dist/server/routes/mcp.d.ts +3 -0
  433. package/dist/server/routes/mcp.js +20 -0
  434. package/dist/server/routes/mcp.js.map +1 -0
  435. package/dist/server/routes/open.d.ts +4 -0
  436. package/dist/server/routes/open.js +25 -0
  437. package/dist/server/routes/open.js.map +1 -0
  438. package/dist/server/routes/stream/debugLogging.d.ts +11 -0
  439. package/dist/server/routes/stream/debugLogging.js +59 -0
  440. package/dist/server/routes/stream/debugLogging.js.map +1 -0
  441. package/dist/server/routes/stream/index.d.ts +34 -0
  442. package/dist/server/routes/stream/index.js +98 -0
  443. package/dist/server/routes/stream/index.js.map +1 -0
  444. package/dist/server/routes/stream/streaming.d.ts +3 -0
  445. package/dist/server/routes/stream/streaming.js +26 -0
  446. package/dist/server/routes/stream/streaming.js.map +1 -0
  447. package/dist/server/routes/stream/userAgent.d.ts +11 -0
  448. package/dist/server/routes/stream/userAgent.js +25 -0
  449. package/dist/server/routes/stream/userAgent.js.map +1 -0
  450. package/dist/server/sdk.d.ts +15 -0
  451. package/dist/server/sdk.js +32 -0
  452. package/dist/server/sdk.js.map +1 -0
  453. package/dist/server/types/cli.d.ts +14 -0
  454. package/dist/server/types/env.d.ts +10 -0
  455. package/dist/server/types/index.d.ts +2 -0
  456. package/dist/server/types/utils.d.ts +44 -0
  457. package/dist/server/utils/cors.d.ts +12 -0
  458. package/dist/server/utils/cors.js +22 -0
  459. package/dist/server/utils/cors.js.map +1 -0
  460. package/dist/server/utils/docker-compose-parser.d.ts +20 -0
  461. package/dist/server/utils/docker-compose-parser.js +61 -0
  462. package/dist/server/utils/docker-compose-parser.js.map +1 -0
  463. package/dist/server/utils/docker-compose.d.ts +30 -0
  464. package/dist/server/utils/docker-compose.js +131 -0
  465. package/dist/server/utils/docker-compose.js.map +1 -0
  466. package/dist/server/utils/eventContainer.d.ts +34 -0
  467. package/dist/server/utils/eventContainer.js +71 -0
  468. package/dist/server/utils/eventContainer.js.map +1 -0
  469. package/dist/server/utils/extras.d.ts +5 -0
  470. package/dist/server/utils/extras.js +63 -0
  471. package/dist/server/utils/extras.js.map +1 -0
  472. package/dist/server/utils/getBuffer.d.ts +1 -0
  473. package/dist/server/utils/getBuffer.js +9 -0
  474. package/dist/server/utils/getBuffer.js.map +1 -0
  475. package/dist/server/utils/index.d.ts +4 -0
  476. package/dist/shared/constants.d.ts +3 -0
  477. package/dist/shared/constants.js +9 -0
  478. package/dist/shared/constants.js.map +1 -0
  479. package/dist/ui/assets/angular-html.js +1 -0
  480. package/dist/ui/assets/angular-ts.js +1 -0
  481. package/dist/ui/assets/astro.js +1 -0
  482. package/dist/ui/assets/blade.js +1 -0
  483. package/dist/ui/assets/client.js +50 -0
  484. package/dist/ui/assets/coffee.js +1 -0
  485. package/dist/ui/assets/cpp.js +1 -0
  486. package/dist/ui/assets/electron-index.js +6 -0
  487. package/dist/ui/assets/firefox.svg +105 -0
  488. package/dist/ui/assets/glsl.js +1 -0
  489. package/dist/ui/assets/graphql.js +1 -0
  490. package/dist/ui/assets/haml.js +1 -0
  491. package/dist/ui/assets/handlebars.js +1 -0
  492. package/dist/ui/assets/html-derivative.js +1 -0
  493. package/dist/ui/assets/html.js +1 -0
  494. package/dist/ui/assets/http.js +1 -0
  495. package/dist/ui/assets/index.js +152 -0
  496. package/dist/ui/assets/index2.js +1 -0
  497. package/dist/ui/assets/instrumentation.js +24 -0
  498. package/dist/ui/assets/jinja.js +1 -0
  499. package/dist/ui/assets/jison.js +1 -0
  500. package/dist/ui/assets/julia.js +1 -0
  501. package/dist/ui/assets/main.css +1 -0
  502. package/dist/ui/assets/main.js +2 -0
  503. package/dist/ui/assets/marko.js +1 -0
  504. package/dist/ui/assets/mdc.js +1 -0
  505. package/dist/ui/assets/nestjs.svg +4 -0
  506. package/dist/ui/assets/php.js +1 -0
  507. package/dist/ui/assets/pug.js +1 -0
  508. package/dist/ui/assets/raleway-cyrillic-400-normal.woff +0 -0
  509. package/dist/ui/assets/raleway-cyrillic-400-normal.woff2 +0 -0
  510. package/dist/ui/assets/raleway-cyrillic-ext-400-normal.woff +0 -0
  511. package/dist/ui/assets/raleway-cyrillic-ext-400-normal.woff2 +0 -0
  512. package/dist/ui/assets/raleway-latin-400-normal.woff +0 -0
  513. package/dist/ui/assets/raleway-latin-400-normal.woff2 +0 -0
  514. package/dist/ui/assets/raleway-latin-ext-400-normal.woff +0 -0
  515. package/dist/ui/assets/raleway-latin-ext-400-normal.woff2 +0 -0
  516. package/dist/ui/assets/raleway-vietnamese-400-normal.woff +0 -0
  517. package/dist/ui/assets/raleway-vietnamese-400-normal.woff2 +0 -0
  518. package/dist/ui/assets/safari.svg +38 -0
  519. package/dist/ui/assets/scss.js +1 -0
  520. package/dist/ui/assets/svelte.js +1 -0
  521. package/dist/ui/assets/ts-tags.js +1 -0
  522. package/dist/ui/assets/vue-html.js +1 -0
  523. package/dist/ui/assets/vue-vine.js +1 -0
  524. package/dist/ui/assets/vue.js +1 -0
  525. package/dist/ui/assets/xml.js +1 -0
  526. package/dist/{overlay/src → ui}/index.html +34 -0
  527. package/dist/ui/manifest.json +1103 -0
  528. package/package.json +109 -19
  529. package/dist/overlay/assets/angular-html-BmadGEgW.js +0 -1
  530. package/dist/overlay/assets/angular-ts-D-QQnnGT.js +0 -1
  531. package/dist/overlay/assets/astro-DHnp0xIo.js +0 -1
  532. package/dist/overlay/assets/blade-OPzGcV14.js +0 -1
  533. package/dist/overlay/assets/coffee-Dl27lzbd.js +0 -1
  534. package/dist/overlay/assets/cpp-Cj177cuW.js +0 -1
  535. package/dist/overlay/assets/glsl-CkUcVZNK.js +0 -1
  536. package/dist/overlay/assets/graphql-BLaPX4fU.js +0 -1
  537. package/dist/overlay/assets/haml-6FagfhCM.js +0 -1
  538. package/dist/overlay/assets/handlebars-Bd5Y4M6I.js +0 -1
  539. package/dist/overlay/assets/html-7XVNRwN7.js +0 -1
  540. package/dist/overlay/assets/html-derivative-BNxZ5Yf6.js +0 -1
  541. package/dist/overlay/assets/http-WC357zBG.js +0 -1
  542. package/dist/overlay/assets/index-BfFEknL3.js +0 -1
  543. package/dist/overlay/assets/jinja-WEhOU5ES.js +0 -1
  544. package/dist/overlay/assets/jison-c2JI40PB.js +0 -1
  545. package/dist/overlay/assets/julia-DcoDQokW.js +0 -1
  546. package/dist/overlay/assets/main.js +0 -224
  547. package/dist/overlay/assets/marko-DDi9qpQP.js +0 -1
  548. package/dist/overlay/assets/mdc-FI2x3BiY.js +0 -1
  549. package/dist/overlay/assets/php-BRU9zhoN.js +0 -1
  550. package/dist/overlay/assets/pug-CJWI-qSo.js +0 -1
  551. package/dist/overlay/assets/scss-B1FaCqwR.js +0 -1
  552. package/dist/overlay/assets/svelte-BjDUPxZ1.js +0 -1
  553. package/dist/overlay/assets/ts-tags-CZMzuZh-.js +0 -1
  554. package/dist/overlay/assets/vue-D-ba2-Rx.js +0 -1
  555. package/dist/overlay/assets/vue-html-Dn2ZoOSz.js +0 -1
  556. package/dist/overlay/assets/vue-vine-Jmfkm6lF.js +0 -1
  557. package/dist/overlay/assets/xml-C2J0sS9M.js +0 -1
  558. package/dist/overlay/manifest.json +0 -1000
  559. package/dist/run.cjs +0 -51848
  560. package/dist/sidecar.cjs +0 -7
  561. package/dist/sidecar.d.ts +0 -1
  562. package/dist/sidecar.js +0 -4
  563. /package/dist/{overlay/assets/andromeeda-BIpZ7gaU.js → ui/assets/andromeeda.js} +0 -0
  564. /package/dist/{overlay/assets/aurora-x-BwoVEUWZ.js → ui/assets/aurora-x.js} +0 -0
  565. /package/dist/{overlay/assets/ayu-dark-CxPZkpb2.js → ui/assets/ayu-dark.js} +0 -0
  566. /package/dist/{overlay/assets/c-eeMepfLm.js → ui/assets/c.js} +0 -0
  567. /package/dist/{overlay/assets/catppuccin-frappe-5udUqgsX.js → ui/assets/catppuccin-frappe.js} +0 -0
  568. /package/dist/{overlay/assets/catppuccin-latte-ufkS-HWv.js → ui/assets/catppuccin-latte.js} +0 -0
  569. /package/dist/{overlay/assets/catppuccin-macchiato-DzL2LPek.js → ui/assets/catppuccin-macchiato.js} +0 -0
  570. /package/dist/{overlay/assets/catppuccin-mocha-DDDDwkUT.js → ui/assets/catppuccin-mocha.js} +0 -0
  571. /package/dist/{overlay/assets/css-CECN5uSL.js → ui/assets/css.js} +0 -0
  572. /package/dist/{overlay/assets/dark-plus-pUHDTVV0.js → ui/assets/dark-plus.js} +0 -0
  573. /package/dist/{overlay/assets/dracula-soft-BKa-aqBv.js → ui/assets/dracula-soft.js} +0 -0
  574. /package/dist/{overlay/assets/dracula-BtZx2Kac.js → ui/assets/dracula.js} +0 -0
  575. /package/dist/{overlay/assets/everforest-dark-DMCBqXCK.js → ui/assets/everforest-dark.js} +0 -0
  576. /package/dist/{overlay/assets/everforest-light-BbXl82Em.js → ui/assets/everforest-light.js} +0 -0
  577. /package/dist/{overlay/assets/github-dark-default-BJPUVz4H.js → ui/assets/github-dark-default.js} +0 -0
  578. /package/dist/{overlay/assets/github-dark-dimmed-DUshB20C.js → ui/assets/github-dark-dimmed.js} +0 -0
  579. /package/dist/{overlay/assets/github-dark-high-contrast-D3aGCnF8.js → ui/assets/github-dark-high-contrast.js} +0 -0
  580. /package/dist/{overlay/assets/github-dark-DenFmJkN.js → ui/assets/github-dark.js} +0 -0
  581. /package/dist/{overlay/assets/github-light-default-D99KPAby.js → ui/assets/github-light-default.js} +0 -0
  582. /package/dist/{overlay/assets/github-light-high-contrast-BbmZE-Mp.js → ui/assets/github-light-high-contrast.js} +0 -0
  583. /package/dist/{overlay/assets/github-light-JYsPkUQd.js → ui/assets/github-light.js} +0 -0
  584. /package/dist/{overlay/assets/gruvbox-dark-hard-C2ND4cMr.js → ui/assets/gruvbox-dark-hard.js} +0 -0
  585. /package/dist/{overlay/assets/gruvbox-dark-medium-C8k4c8au.js → ui/assets/gruvbox-dark-medium.js} +0 -0
  586. /package/dist/{overlay/assets/gruvbox-dark-soft-xx9Q6FaG.js → ui/assets/gruvbox-dark-soft.js} +0 -0
  587. /package/dist/{overlay/assets/gruvbox-light-hard-BpUXv5in.js → ui/assets/gruvbox-light-hard.js} +0 -0
  588. /package/dist/{overlay/assets/gruvbox-light-medium-D3XFCoU1.js → ui/assets/gruvbox-light-medium.js} +0 -0
  589. /package/dist/{overlay/assets/gruvbox-light-soft-u7hpfz6Z.js → ui/assets/gruvbox-light-soft.js} +0 -0
  590. /package/dist/{overlay/assets/houston-BDYrDoDW.js → ui/assets/houston.js} +0 -0
  591. /package/dist/{overlay/assets/imba-CimUv-Uh.js → ui/assets/imba.js} +0 -0
  592. /package/dist/{overlay/assets/java-DY6VlHhP.js → ui/assets/java.js} +0 -0
  593. /package/dist/{overlay/assets/javascript-Dp1Jmi5H.js → ui/assets/javascript.js} +0 -0
  594. /package/dist/{overlay/assets/json-DxJze_jm.js → ui/assets/json.js} +0 -0
  595. /package/dist/{overlay/assets/json5-BT4Fjg39.js → ui/assets/json5.js} +0 -0
  596. /package/dist/{overlay/assets/jsonc-CHjZD8gR.js → ui/assets/jsonc.js} +0 -0
  597. /package/dist/{overlay/assets/jsonl-BGuvDmy9.js → ui/assets/jsonl.js} +0 -0
  598. /package/dist/{overlay/assets/jsx-BtKADgXT.js → ui/assets/jsx.js} +0 -0
  599. /package/dist/{overlay/assets/kanagawa-dragon-CiKur4Hl.js → ui/assets/kanagawa-dragon.js} +0 -0
  600. /package/dist/{overlay/assets/kanagawa-lotus-BKu-smKu.js → ui/assets/kanagawa-lotus.js} +0 -0
  601. /package/dist/{overlay/assets/kanagawa-wave-CQwozSzG.js → ui/assets/kanagawa-wave.js} +0 -0
  602. /package/dist/{overlay/assets/laserwave-6a00oqik.js → ui/assets/laserwave.js} +0 -0
  603. /package/dist/{overlay/assets/less-B1GLI2Di.js → ui/assets/less.js} +0 -0
  604. /package/dist/{overlay/assets/light-plus-CZuVqSLX.js → ui/assets/light-plus.js} +0 -0
  605. /package/dist/{overlay/assets/markdown-CrScaQ96.js → ui/assets/markdown.js} +0 -0
  606. /package/dist/{overlay/assets/material-theme-darker-CkRroheE.js → ui/assets/material-theme-darker.js} +0 -0
  607. /package/dist/{overlay/assets/material-theme-lighter-BUBw43Yz.js → ui/assets/material-theme-lighter.js} +0 -0
  608. /package/dist/{overlay/assets/material-theme-ocean-ClGX14Ja.js → ui/assets/material-theme-ocean.js} +0 -0
  609. /package/dist/{overlay/assets/material-theme-palenight-C1RVm8K1.js → ui/assets/material-theme-palenight.js} +0 -0
  610. /package/dist/{overlay/assets/material-theme-D6KBX41T.js → ui/assets/material-theme.js} +0 -0
  611. /package/dist/{overlay/assets/mdx-BOhZZUJ8.js → ui/assets/mdx.js} +0 -0
  612. /package/dist/{overlay/assets/min-dark-C7ak0t6c.js → ui/assets/min-dark.js} +0 -0
  613. /package/dist/{overlay/assets/min-light-CKFxVcPp.js → ui/assets/min-light.js} +0 -0
  614. /package/dist/{overlay/assets/monokai-C1KBYcO0.js → ui/assets/monokai.js} +0 -0
  615. /package/dist/{overlay/assets/night-owl-Bm2rzalh.js → ui/assets/night-owl.js} +0 -0
  616. /package/dist/{overlay/assets/nord-CC5OiUXg.js → ui/assets/nord.js} +0 -0
  617. /package/dist/{overlay/assets/one-dark-pro-DTA3VF0_.js → ui/assets/one-dark-pro.js} +0 -0
  618. /package/dist/{overlay/assets/one-light-D9sNaUtq.js → ui/assets/one-light.js} +0 -0
  619. /package/dist/{overlay/assets/plastic-CSTz3KZp.js → ui/assets/plastic.js} +0 -0
  620. /package/dist/{overlay/assets/poimandres-C-VADXHD.js → ui/assets/poimandres.js} +0 -0
  621. /package/dist/{overlay/assets/postcss-05aHdL-n.js → ui/assets/postcss.js} +0 -0
  622. /package/dist/{overlay/assets/python-BFNSHbwJ.js → ui/assets/python.js} +0 -0
  623. /package/dist/{overlay/assets/r-Bm0uF0U2.js → ui/assets/r.js} +0 -0
  624. /package/dist/{overlay/assets/red-7y8PH7HH.js → ui/assets/red.js} +0 -0
  625. /package/dist/{overlay/assets/regexp-BazyLpPg.js → ui/assets/regexp.js} +0 -0
  626. /package/dist/{overlay/assets/rose-pine-dawn-ClRRUdXX.js → ui/assets/rose-pine-dawn.js} +0 -0
  627. /package/dist/{overlay/assets/rose-pine-moon-ucNn3Gm8.js → ui/assets/rose-pine-moon.js} +0 -0
  628. /package/dist/{overlay/assets/rose-pine-Cr4kwgAY.js → ui/assets/rose-pine.js} +0 -0
  629. /package/dist/{overlay/assets/sass-DxHp5rTx.js → ui/assets/sass.js} +0 -0
  630. /package/dist/{overlay/assets/shellscript-InADTalH.js → ui/assets/shellscript.js} +0 -0
  631. /package/dist/{overlay/assets/slack-dark-i7wN4OET.js → ui/assets/slack-dark.js} +0 -0
  632. /package/dist/{overlay/assets/slack-ochin-ndHf0LoP.js → ui/assets/slack-ochin.js} +0 -0
  633. /package/dist/{overlay/assets/snazzy-light-BlSJXAu4.js → ui/assets/snazzy-light.js} +0 -0
  634. /package/dist/{overlay/assets/solarized-dark-UTmkh7lw.js → ui/assets/solarized-dark.js} +0 -0
  635. /package/dist/{overlay/assets/solarized-light-BheCkDPT.js → ui/assets/solarized-light.js} +0 -0
  636. /package/dist/{overlay/assets/sql-Cn_v3PB0.js → ui/assets/sql.js} +0 -0
  637. /package/dist/{overlay/assets/stylus-CyKEU1Ej.js → ui/assets/stylus.js} +0 -0
  638. /package/dist/{overlay/assets/synthwave-84-NU3C_KFZ.js → ui/assets/synthwave-84.js} +0 -0
  639. /package/dist/{overlay/assets/tokyo-night-DP4TmcQl.js → ui/assets/tokyo-night.js} +0 -0
  640. /package/dist/{overlay/assets/tsx-B8rCNbgL.js → ui/assets/tsx.js} +0 -0
  641. /package/dist/{overlay/assets/typescript-mg6ATTE8.js → ui/assets/typescript.js} +0 -0
  642. /package/dist/{overlay/assets/vesper-BckBta1U.js → ui/assets/vesper.js} +0 -0
  643. /package/dist/{overlay/assets/vitesse-black-BoGvW84i.js → ui/assets/vitesse-black.js} +0 -0
  644. /package/dist/{overlay/assets/vitesse-dark-Cym-eLtO.js → ui/assets/vitesse-dark.js} +0 -0
  645. /package/dist/{overlay/assets/vitesse-light-CcmG315c.js → ui/assets/vitesse-light.js} +0 -0
  646. /package/dist/{overlay/assets/wasm-BBXxrAl7.js → ui/assets/wasm.js} +0 -0
  647. /package/dist/{overlay/assets/wasm-DQxwEHae.js → ui/assets/wasm2.js} +0 -0
  648. /package/dist/{overlay/assets/wgsl-DY4iK1q1.js → ui/assets/wgsl.js} +0 -0
  649. /package/dist/{overlay/assets/wit-CQMQOlTg.js → ui/assets/wit.js} +0 -0
  650. /package/dist/{overlay/assets/yaml-DaO7k5B1.js → ui/assets/yaml.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sources":["../src/run.ts"],"sourcesContent":["import { readFileSync } from \"node:fs\";\nimport Module from \"node:module\";\nimport { join } from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\nimport { setContext, startSpan } from \"@sentry/node\";\nimport { main } from \"./server/cli.ts\";\nimport \"./instrument.ts\";\n\nconst require = Module.createRequire(import.meta.url);\nlet sea: any = null;\ntry {\n // This is to maintain compatibility with Node 20.11- as\n // the `node:sea` module is added in Node 20.12+\n sea = require(\"node:sea\");\n} catch {\n sea = { isSea: () => false };\n}\n\nconst homeDir = process.env.HOME || process.env.USERPROFILE;\nsetContext(\"CLI\", {\n sea: sea.isSea(),\n // TODO: Be less naive with path obscuring\n argv: homeDir ? process.argv.map(arg => arg.replace(homeDir, \"~\")) : process.argv,\n});\n\nconst withTracing = <T extends (...args: any[]) => any>(\n fn: T,\n spanArgs = {},\n): ((...args: Parameters<T>) => ReturnType<T>) => {\n return (...args: Parameters<T>): ReturnType<T> =>\n startSpan({ name: fn.name, attributes: { args }, ...spanArgs }, () => fn(...args));\n};\n\nconst readAsset = withTracing(\n sea.isSea()\n ? (name: string) => Buffer.from(sea.getRawAsset(name))\n : (() => {\n const ASSET_DIR = join(fileURLToPath(import.meta.url), \"../../dist/ui/\");\n\n return (name: string) => readFileSync(join(ASSET_DIR, name));\n })(),\n { name: \"readAsset\", op: \"cli.asset.read\" },\n);\n\nstartSpan({ name: \"Spotlight CLI\", op: \"cli\" }, async () => {\n await startSpan({ name: \"Setup Spotlight\", op: \"cli.setup\" }, async () => {\n const MANIFEST_NAME = \"manifest.json\";\n const ENTRY_POINT_NAME = \"index.html\";\n const filesToServe = Object.create(null);\n\n if (process.env.NODE_ENV === \"production\") {\n startSpan({ name: \"Setup Server Assets\", op: \"cli.setup.assets\" }, () => {\n // Following the guide here: https://vite.dev/guide/backend-integration.html\n const manifest = JSON.parse(readAsset(MANIFEST_NAME).toString());\n filesToServe[ENTRY_POINT_NAME] = readAsset(ENTRY_POINT_NAME);\n const entries = Object.values(manifest);\n for (const entry of entries) {\n if (entry && typeof entry === \"object\" && \"file\" in entry && typeof entry.file === \"string\") {\n filesToServe[entry.file] = readAsset(entry.file);\n }\n }\n });\n }\n\n await main({\n basePath: process.cwd(),\n filesToServe,\n });\n });\n});\n"],"names":["require"],"mappings":";;;;;;;AAQA,MAAMA,WAAU,OAAO,cAAc,YAAY,GAAG;AACpD,IAAI,MAAW;AACf,IAAI;AAGF,QAAMA,SAAQ,UAAU;AAC1B,QAAQ;AACN,QAAM,EAAE,OAAO,MAAM,MAAA;AACvB;AAEA,MAAM,UAAU,QAAQ,IAAI,QAAQ,QAAQ,IAAI;AAChD,WAAW,OAAO;AAAA,EAChB,KAAK,IAAI,MAAA;AAAA;AAAA,EAET,MAAM,UAAU,QAAQ,KAAK,IAAI,CAAA,QAAO,IAAI,QAAQ,SAAS,GAAG,CAAC,IAAI,QAAQ;AAC/E,CAAC;AAED,MAAM,cAAc,CAClB,IACA,WAAW,OACqC;AAChD,SAAO,IAAI,SACT,UAAU,EAAE,MAAM,GAAG,MAAM,YAAY,EAAE,KAAA,GAAQ,GAAG,SAAA,GAAY,MAAM,GAAG,GAAG,IAAI,CAAC;AACrF;AAEA,MAAM,YAAY;AAAA,EAChB,IAAI,MAAA,IACA,CAAC,SAAiB,OAAO,KAAK,IAAI,YAAY,IAAI,CAAC,KAClD,MAAM;AACL,UAAM,YAAY,KAAK,cAAc,YAAY,GAAG,GAAG,gBAAgB;AAEvE,WAAO,CAAC,SAAiB,aAAa,KAAK,WAAW,IAAI,CAAC;AAAA,EAC7D,GAAA;AAAA,EACJ,EAAE,MAAM,aAAa,IAAI,iBAAA;AAC3B;AAEA,UAAU,EAAE,MAAM,iBAAiB,IAAI,MAAA,GAAS,YAAY;AAC1D,QAAM,UAAU,EAAE,MAAM,mBAAmB,IAAI,YAAA,GAAe,YAAY;AACxE,UAAM,gBAAgB;AACtB,UAAM,mBAAmB;AACzB,UAAM,eAAe,uBAAO,OAAO,IAAI;AAEI;AACzC,gBAAU,EAAE,MAAM,uBAAuB,IAAI,mBAAA,GAAsB,MAAM;AAEvE,cAAM,WAAW,KAAK,MAAM,UAAU,aAAa,EAAE,UAAU;AAC/D,qBAAa,gBAAgB,IAAI,UAAU,gBAAgB;AAC3D,cAAM,UAAU,OAAO,OAAO,QAAQ;AACtC,mBAAW,SAAS,SAAS;AAC3B,cAAI,SAAS,OAAO,UAAU,YAAY,UAAU,SAAS,OAAO,MAAM,SAAS,UAAU;AAC3F,yBAAa,MAAM,IAAI,IAAI,UAAU,MAAM,IAAI;AAAA,UACjD;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAEA,UAAM,KAAK;AAAA,MACT,UAAU,QAAQ,IAAA;AAAA,MAClB;AAAA,IAAA,CACD;AAAA,EACH,CAAC;AACH,CAAC;"}
@@ -0,0 +1,7 @@
1
+ export declare const sentryBaseConfig: {
2
+ readonly enabled: boolean;
3
+ readonly environment: string;
4
+ readonly release: `spotlight@${string}`;
5
+ readonly tracesSampleRate: 1;
6
+ readonly enableLogs: true;
7
+ };
@@ -0,0 +1,11 @@
1
+ const sentryBaseConfig = {
2
+ enabled: Boolean("production") && true,
3
+ environment: "production",
4
+ release: `spotlight@${"4.6.0"}`,
5
+ tracesSampleRate: 1,
6
+ enableLogs: true
7
+ };
8
+ export {
9
+ sentryBaseConfig
10
+ };
11
+ //# sourceMappingURL=sentry-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry-config.js","sources":["../src/sentry-config.ts"],"sourcesContent":["export const sentryBaseConfig = {\n enabled: Boolean(process.env.NODE_ENV) && process.env.NODE_ENV !== \"development\",\n environment: process.env.NODE_ENV || \"development\",\n release: `spotlight@${process.env.npm_package_version}`,\n tracesSampleRate: 1,\n enableLogs: true,\n} as const;\n"],"names":[],"mappings":"AAAO,MAAM,mBAAmB;AAAA,EAC9B,SAAS,QAAQ,YAAoB,KAAK;AAAA,EAC1C,aAAa;AAAA,EACb,SAAS,aAAa,OAA+B;AAAA,EACrD,kBAAkB;AAAA,EAClB,YAAY;AACd;"}
@@ -0,0 +1 @@
1
+ export default function showHelp(): void;
@@ -0,0 +1,38 @@
1
+ import { EVERYTHING_MAGIC_WORDS, NAME_TO_TYPE_MAPPING } from "./tail.js";
2
+ import { AVAILABLE_FORMATTERS } from "../formatters/types.js";
3
+ function showHelp() {
4
+ console.log(`
5
+ Spotlight Sidecar - Development proxy server for Spotlight
6
+
7
+ Usage: spotlight [command] [options]
8
+
9
+ Commands:
10
+ tail [types...] Tail Sentry events (default: everything)
11
+ Available types: ${[...Object.keys(NAME_TO_TYPE_MAPPING)].join(", ")}
12
+ Magic words: ${[...EVERYTHING_MAGIC_WORDS].join(", ")}
13
+ mcp Start in MCP (Model Context Protocol) mode
14
+ help Show this help message
15
+
16
+ Options:
17
+ -p, --port <port> Port to listen on (default: 8969, or 0 for random)
18
+ -d, --debug Enable debug logging
19
+ -f, --format <format> Output format for tail command (default: human)
20
+ Available formats: ${[...AVAILABLE_FORMATTERS].join(", ")}
21
+ -h, --help Show this help message
22
+
23
+ Examples:
24
+ spotlight # Start on default port 8969
25
+ spotlight tail # Tail all event types (human format)
26
+ spotlight tail errors # Tail only errors
27
+ spotlight tail errors logs # Tail errors and logs
28
+ spotlight tail --format json # Explicitly use json format
29
+ spotlight mcp # Start in MCP mode
30
+ spotlight --port 3000 # Start on port 3000
31
+ spotlight -p 3000 -d # Start on port 3000 with debug logging
32
+ `);
33
+ process.exit(0);
34
+ }
35
+ export {
36
+ showHelp as default
37
+ };
38
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sources":["../../../src/server/cli/help.ts"],"sourcesContent":["import { EVERYTHING_MAGIC_WORDS, NAME_TO_TYPE_MAPPING } from \"../cli/tail.ts\";\nimport { AVAILABLE_FORMATTERS } from \"../formatters/types.ts\";\n\nexport default function showHelp() {\n console.log(`\nSpotlight Sidecar - Development proxy server for Spotlight\n\nUsage: spotlight [command] [options]\n\nCommands:\n tail [types...] Tail Sentry events (default: everything)\n Available types: ${[...Object.keys(NAME_TO_TYPE_MAPPING)].join(\", \")}\n Magic words: ${[...EVERYTHING_MAGIC_WORDS].join(\", \")}\n mcp Start in MCP (Model Context Protocol) mode\n help Show this help message\n\nOptions:\n -p, --port <port> Port to listen on (default: 8969, or 0 for random)\n -d, --debug Enable debug logging\n -f, --format <format> Output format for tail command (default: human)\n Available formats: ${[...AVAILABLE_FORMATTERS].join(\", \")}\n -h, --help Show this help message\n\nExamples:\n spotlight # Start on default port 8969\n spotlight tail # Tail all event types (human format)\n spotlight tail errors # Tail only errors\n spotlight tail errors logs # Tail errors and logs\n spotlight tail --format json # Explicitly use json format\n spotlight mcp # Start in MCP mode\n spotlight --port 3000 # Start on port 3000\n spotlight -p 3000 -d # Start on port 3000 with debug logging\n`);\n process.exit(0);\n}\n"],"names":[],"mappings":";;AAGA,SAAwB,WAAW;AACjC,UAAQ,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0CAO4B,CAAC,GAAG,OAAO,KAAK,oBAAoB,CAAC,EAAE,KAAK,IAAI,CAAC;AAAA,sCACrD,CAAC,GAAG,sBAAsB,EAAE,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8CAQ9B,CAAC,GAAG,oBAAoB,EAAE,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAYjF;AACC,UAAQ,KAAK,CAAC;AAChB;"}
@@ -0,0 +1,2 @@
1
+ import { CLIHandlerOptions } from '../types/cli.ts';
2
+ export default function mcp({ port, basePath, filesToServe }: CLIHandlerOptions): Promise<import('http').Server<typeof import('http').IncomingMessage, typeof import('http').ServerResponse> | undefined>;
@@ -0,0 +1,105 @@
1
+ import { Client } from "../../node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js";
2
+ import { StdioServerTransport } from "../../node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js";
3
+ import { captureException } from "@sentry/node";
4
+ import { startStdioServer, ServerType } from "mcp-proxy";
5
+ import { logger } from "../logger.js";
6
+ import { startServer, setShutdownHandlers } from "../main.js";
7
+ import { createMCPInstance } from "../mcp/mcp.js";
8
+ import { isSidecarRunning } from "../utils/extras.js";
9
+ async function startServerWithStdioMCP(port, basePath, filesToServe) {
10
+ const serverInstance = await startServer({
11
+ port,
12
+ basePath,
13
+ filesToServe
14
+ });
15
+ setShutdownHandlers(serverInstance);
16
+ logger.info("Starting MCP over stdio too...");
17
+ const mcpInstance = createMCPInstance();
18
+ await mcpInstance.connect(new StdioServerTransport());
19
+ const shutdownMcp = () => {
20
+ mcpInstance.close();
21
+ };
22
+ process.on("SIGINT", shutdownMcp);
23
+ process.on("SIGTERM", shutdownMcp);
24
+ return serverInstance;
25
+ }
26
+ async function startMCPStdioHTTPProxy(port, basePath, filesToServe) {
27
+ let intentionalShutdown = false;
28
+ let client = null;
29
+ let server = null;
30
+ const shutdown = async () => {
31
+ if (intentionalShutdown) {
32
+ logger.info("Bye.");
33
+ process.exit(0);
34
+ }
35
+ intentionalShutdown = true;
36
+ logger.info("Shutting down MCP stdio proxy...");
37
+ if (client) {
38
+ await client.close();
39
+ }
40
+ if (server) {
41
+ await server.close();
42
+ }
43
+ };
44
+ process.on("SIGINT", shutdown);
45
+ process.on("SIGTERM", shutdown);
46
+ server = await startStdioServer({
47
+ // We need to hook into `initStreamClient` as the returned object from startStdioServer
48
+ // is not a meta proxy object giving access to both the server and the client. It just
49
+ // returns the StdioServerTransport instance without a way to access the client or its errors.
50
+ // TODO: We should probably upstream a fix for this to close the server or bubble the errors
51
+ initStreamClient: () => {
52
+ client = new Client({
53
+ name: "Spotlight Sidecar (stdio proxy)",
54
+ version: "1.0.0"
55
+ });
56
+ client.onerror = async (err) => {
57
+ if (err.message.startsWith("Maximum reconnection attempts") || /disconnected|fetch failed|connection closed/i.test(err.message)) {
58
+ if (client) await client.close();
59
+ if (server) await server.close();
60
+ } else if (!/conflict/i.test(err.message)) {
61
+ captureException(err);
62
+ logger.error(`MCP stdio proxy error: ${err.name}: ${err.message}`);
63
+ }
64
+ };
65
+ return Promise.resolve(client);
66
+ },
67
+ serverType: ServerType.HTTPStream,
68
+ url: `http://localhost:${port}/mcp`
69
+ });
70
+ server.onclose = async () => {
71
+ if (intentionalShutdown) {
72
+ logger.info("MCP stdio proxy server closed.");
73
+ return;
74
+ }
75
+ logger.info("MCP stdio proxy server closed unexpectedly. Attempting to restart...");
76
+ process.off("SIGINT", shutdown);
77
+ process.off("SIGTERM", shutdown);
78
+ process.stdin.resume();
79
+ try {
80
+ await startMCPStdioHTTPProxy(port, basePath, filesToServe);
81
+ logger.info("Connection restored");
82
+ } catch (_err) {
83
+ try {
84
+ return await startServerWithStdioMCP(port, basePath, filesToServe);
85
+ } catch (_err2) {
86
+ logger.error("Failed to restart sidecar server after MCP stdio proxy closed.");
87
+ captureException(_err2);
88
+ await startMCPStdioHTTPProxy(port, basePath, filesToServe);
89
+ }
90
+ }
91
+ };
92
+ }
93
+ async function mcp({ port, basePath, filesToServe }) {
94
+ if (port > 0 && await isSidecarRunning(port)) {
95
+ logger.info("Connecting to existing MCP instance with stdio proxy...");
96
+ await startMCPStdioHTTPProxy(port, basePath, filesToServe);
97
+ logger.info(`Connected to existing MCP instance on port ${port}`);
98
+ } else {
99
+ return await startServerWithStdioMCP(port, basePath, filesToServe);
100
+ }
101
+ }
102
+ export {
103
+ mcp as default
104
+ };
105
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sources":["../../../src/server/cli/mcp.ts"],"sourcesContent":["import { Client } from \"@modelcontextprotocol/sdk/client/index.js\";\nimport { StdioServerTransport } from \"@modelcontextprotocol/sdk/server/stdio.js\";\nimport { captureException } from \"@sentry/node\";\nimport { ServerType as ProxyServerType, startStdioServer } from \"mcp-proxy\";\nimport { logger } from \"../logger.ts\";\nimport { setShutdownHandlers, startServer } from \"../main.ts\";\nimport { createMCPInstance } from \"../mcp/mcp.ts\";\nimport type { CLIHandlerOptions } from \"../types/cli.ts\";\nimport { isSidecarRunning } from \"../utils/extras.ts\";\n\nasync function startServerWithStdioMCP(\n port: CLIHandlerOptions[\"port\"],\n basePath: CLIHandlerOptions[\"basePath\"],\n filesToServe: CLIHandlerOptions[\"filesToServe\"],\n) {\n const serverInstance = await startServer({\n port,\n basePath,\n filesToServe,\n });\n setShutdownHandlers(serverInstance);\n\n logger.info(\"Starting MCP over stdio too...\");\n const mcpInstance = createMCPInstance();\n await mcpInstance.connect(new StdioServerTransport());\n\n const shutdownMcp = () => {\n mcpInstance.close();\n };\n\n process.on(\"SIGINT\", shutdownMcp);\n process.on(\"SIGTERM\", shutdownMcp);\n\n return serverInstance;\n}\n\nasync function startMCPStdioHTTPProxy(\n port: CLIHandlerOptions[\"port\"],\n basePath: CLIHandlerOptions[\"basePath\"],\n filesToServe: CLIHandlerOptions[\"filesToServe\"],\n) {\n let intentionalShutdown = false;\n let client: Client | null = null;\n let server: Awaited<ReturnType<typeof startStdioServer>> | null = null;\n\n const shutdown = async () => {\n if (intentionalShutdown) {\n // If we get the signal again, exit immediately\n logger.info(\"Bye.\");\n process.exit(0);\n }\n\n intentionalShutdown = true;\n logger.info(\"Shutting down MCP stdio proxy...\");\n\n if (client) {\n await client.close();\n }\n if (server) {\n await server.close();\n }\n };\n\n // Set up signal handlers for graceful shutdown\n process.on(\"SIGINT\", shutdown);\n process.on(\"SIGTERM\", shutdown);\n\n server = await startStdioServer({\n // We need to hook into `initStreamClient` as the returned object from startStdioServer\n // is not a meta proxy object giving access to both the server and the client. It just\n // returns the StdioServerTransport instance without a way to access the client or its errors.\n // TODO: We should probably upstream a fix for this to close the server or bubble the errors\n initStreamClient: () => {\n client = new Client({\n name: \"Spotlight Sidecar (stdio proxy)\",\n version: \"1.0.0\",\n });\n client.onerror = async (err: Error) => {\n if (\n err.message.startsWith(\"Maximum reconnection attempts\") ||\n /disconnected|fetch failed|connection closed/i.test(err.message)\n ) {\n if (client) await client.close();\n if (server) await server.close();\n } else if (!/conflict/i.test(err.message)) {\n captureException(err);\n logger.error(`MCP stdio proxy error: ${err.name}: ${err.message}`);\n }\n };\n return Promise.resolve(client);\n },\n serverType: ProxyServerType.HTTPStream,\n url: `http://localhost:${port}/mcp`,\n });\n server.onclose = async () => {\n // If this is an intentional shutdown, don't restart\n if (intentionalShutdown) {\n logger.info(\"MCP stdio proxy server closed.\");\n return;\n }\n\n logger.info(\"MCP stdio proxy server closed unexpectedly. Attempting to restart...\");\n process.off(\"SIGINT\", shutdown);\n process.off(\"SIGTERM\", shutdown);\n // We need to manually resume stdin as `StdioServerTransport` pauses it on\n // close but does not `resume` it when a new instance is created. Probably\n // a bug in https://github.com/modelcontextprotocol/typescript-sdk/blob/main/src/server/stdio.ts\n process.stdin.resume();\n\n try {\n await startMCPStdioHTTPProxy(port, basePath, filesToServe);\n logger.info(\"Connection restored\");\n } catch (_err) {\n try {\n return await startServerWithStdioMCP(port, basePath, filesToServe);\n } catch (_err2) {\n logger.error(\"Failed to restart sidecar server after MCP stdio proxy closed.\");\n captureException(_err2);\n await startMCPStdioHTTPProxy(port, basePath, filesToServe);\n }\n }\n };\n}\n\nexport default async function mcp({ port, basePath, filesToServe }: CLIHandlerOptions) {\n if (port > 0 && (await isSidecarRunning(port))) {\n logger.info(\"Connecting to existing MCP instance with stdio proxy...\");\n await startMCPStdioHTTPProxy(port, basePath, filesToServe);\n logger.info(`Connected to existing MCP instance on port ${port}`);\n } else {\n return await startServerWithStdioMCP(port, basePath, filesToServe);\n }\n}\n"],"names":["ProxyServerType"],"mappings":";;;;;;;;AAUA,eAAe,wBACb,MACA,UACA,cACA;AACA,QAAM,iBAAiB,MAAM,YAAY;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACD;AACD,sBAAoB,cAAc;AAElC,SAAO,KAAK,gCAAgC;AAC5C,QAAM,cAAc,kBAAA;AACpB,QAAM,YAAY,QAAQ,IAAI,sBAAsB;AAEpD,QAAM,cAAc,MAAM;AACxB,gBAAY,MAAA;AAAA,EACd;AAEA,UAAQ,GAAG,UAAU,WAAW;AAChC,UAAQ,GAAG,WAAW,WAAW;AAEjC,SAAO;AACT;AAEA,eAAe,uBACb,MACA,UACA,cACA;AACA,MAAI,sBAAsB;AAC1B,MAAI,SAAwB;AAC5B,MAAI,SAA8D;AAElE,QAAM,WAAW,YAAY;AAC3B,QAAI,qBAAqB;AAEvB,aAAO,KAAK,MAAM;AAClB,cAAQ,KAAK,CAAC;AAAA,IAChB;AAEA,0BAAsB;AACtB,WAAO,KAAK,kCAAkC;AAE9C,QAAI,QAAQ;AACV,YAAM,OAAO,MAAA;AAAA,IACf;AACA,QAAI,QAAQ;AACV,YAAM,OAAO,MAAA;AAAA,IACf;AAAA,EACF;AAGA,UAAQ,GAAG,UAAU,QAAQ;AAC7B,UAAQ,GAAG,WAAW,QAAQ;AAE9B,WAAS,MAAM,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA,IAK9B,kBAAkB,MAAM;AACtB,eAAS,IAAI,OAAO;AAAA,QAClB,MAAM;AAAA,QACN,SAAS;AAAA,MAAA,CACV;AACD,aAAO,UAAU,OAAO,QAAe;AACrC,YACE,IAAI,QAAQ,WAAW,+BAA+B,KACtD,+CAA+C,KAAK,IAAI,OAAO,GAC/D;AACA,cAAI,OAAQ,OAAM,OAAO,MAAA;AACzB,cAAI,OAAQ,OAAM,OAAO,MAAA;AAAA,QAC3B,WAAW,CAAC,YAAY,KAAK,IAAI,OAAO,GAAG;AACzC,2BAAiB,GAAG;AACpB,iBAAO,MAAM,0BAA0B,IAAI,IAAI,KAAK,IAAI,OAAO,EAAE;AAAA,QACnE;AAAA,MACF;AACA,aAAO,QAAQ,QAAQ,MAAM;AAAA,IAC/B;AAAA,IACA,YAAYA,WAAgB;AAAA,IAC5B,KAAK,oBAAoB,IAAI;AAAA,EAAA,CAC9B;AACD,SAAO,UAAU,YAAY;AAE3B,QAAI,qBAAqB;AACvB,aAAO,KAAK,gCAAgC;AAC5C;AAAA,IACF;AAEA,WAAO,KAAK,sEAAsE;AAClF,YAAQ,IAAI,UAAU,QAAQ;AAC9B,YAAQ,IAAI,WAAW,QAAQ;AAI/B,YAAQ,MAAM,OAAA;AAEd,QAAI;AACF,YAAM,uBAAuB,MAAM,UAAU,YAAY;AACzD,aAAO,KAAK,qBAAqB;AAAA,IACnC,SAAS,MAAM;AACb,UAAI;AACF,eAAO,MAAM,wBAAwB,MAAM,UAAU,YAAY;AAAA,MACnE,SAAS,OAAO;AACd,eAAO,MAAM,gEAAgE;AAC7E,yBAAiB,KAAK;AACtB,cAAM,uBAAuB,MAAM,UAAU,YAAY;AAAA,MAC3D;AAAA,IACF;AAAA,EACF;AACF;AAEA,eAA8B,IAAI,EAAE,MAAM,UAAU,gBAAmC;AACrF,MAAI,OAAO,KAAM,MAAM,iBAAiB,IAAI,GAAI;AAC9C,WAAO,KAAK,yDAAyD;AACrE,UAAM,uBAAuB,MAAM,UAAU,YAAY;AACzD,WAAO,KAAK,8CAA8C,IAAI,EAAE;AAAA,EAClE,OAAO;AACL,WAAO,MAAM,wBAAwB,MAAM,UAAU,YAAY;AAAA,EACnE;AACF;"}
@@ -0,0 +1,2 @@
1
+ import { CLIHandlerOptions } from '../types/cli.ts';
2
+ export default function run({ port, cmdArgs, basePath, filesToServe, format }: CLIHandlerOptions): Promise<void>;
@@ -0,0 +1,271 @@
1
+ import { spawn } from "node:child_process";
2
+ import { readFileSync } from "node:fs";
3
+ import * as path from "node:path";
4
+ import * as readline from "node:readline";
5
+ import { Searcher } from "fast-fuzzy";
6
+ import { uuidv7 } from "uuidv7";
7
+ import { SENTRY_CONTENT_TYPE } from "../../shared/constants.js";
8
+ import { logger } from "../logger.js";
9
+ import { detectDockerCompose, buildDockerComposeCommand } from "../utils/docker-compose.js";
10
+ import { getSpotlightURL } from "../utils/extras.js";
11
+ import { getBuffer } from "../utils/getBuffer.js";
12
+ import { EventContainer } from "../utils/eventContainer.js";
13
+ import tail from "./tail.js";
14
+ const SPOTLIGHT_VERSION = "4.6.0";
15
+ const LOCALHOST_HOST = "localhost";
16
+ const DOCKER_HOST = "host.docker.internal";
17
+ function detectPackageJson() {
18
+ try {
19
+ const scripts = JSON.parse(readFileSync("./package.json", "utf-8")).scripts;
20
+ const scriptName = ["dev", "develop", "serve", "start"].find((name) => scripts[name]);
21
+ if (!scriptName || !scripts[scriptName]) {
22
+ return null;
23
+ }
24
+ return { scriptName, scriptCommand: scripts[scriptName] };
25
+ } catch {
26
+ }
27
+ return null;
28
+ }
29
+ async function promptUserChoice() {
30
+ const rl = readline.createInterface({
31
+ input: process.stdin,
32
+ output: process.stdout
33
+ });
34
+ return new Promise((resolve) => {
35
+ console.log("\n⚠️ Both Docker Compose and package.json detected!");
36
+ console.log("\nWhich would you like to use?");
37
+ console.log(" 1) docker compose");
38
+ console.log(" 2) package.json");
39
+ rl.question("Enter your choice (1 or 2): ", (answer) => {
40
+ rl.close();
41
+ const choice = answer.trim();
42
+ const selected = choice === "2" ? "package" : "docker";
43
+ logger.info(`Selected: ${selected === "docker" ? "Docker compose" : "package.json"}`);
44
+ resolve(selected);
45
+ });
46
+ });
47
+ }
48
+ function createLogEnvelope(level, body, timestamp) {
49
+ const envelopeHeader = {
50
+ sdk: {
51
+ name: "sentry.spotlight.stdio",
52
+ version: SPOTLIGHT_VERSION
53
+ }
54
+ };
55
+ const logItem = {
56
+ timestamp,
57
+ level,
58
+ body,
59
+ attributes: {}
60
+ };
61
+ const logPayload = {
62
+ type: "log",
63
+ event_id: uuidv7(),
64
+ timestamp,
65
+ items: [
66
+ {
67
+ ...logItem,
68
+ id: uuidv7(),
69
+ severity_number: level === "error" ? 17 : 9,
70
+ // ERROR=17, INFO=9 per OpenTelemetry spec
71
+ sdk: void 0
72
+ }
73
+ ]
74
+ };
75
+ const payloadJson = JSON.stringify(logPayload);
76
+ const payloadBuffer = Buffer.from(payloadJson, "utf-8");
77
+ const itemHeader = {
78
+ type: "log",
79
+ length: payloadBuffer.length,
80
+ // Use byte length, not string length
81
+ item_count: 1,
82
+ content_type: "application/json"
83
+ };
84
+ const parts = [JSON.stringify(envelopeHeader), JSON.stringify(itemHeader), payloadJson];
85
+ return Buffer.from(`${parts.join("\n")}
86
+ `, "utf-8");
87
+ }
88
+ async function run({ port, cmdArgs, basePath, filesToServe, format }) {
89
+ let relayStdioAsLogs = true;
90
+ const fuzzySearcher = new Searcher([], {
91
+ threshold: 0.8,
92
+ ignoreCase: false
93
+ });
94
+ const logChecker = (type, item, envelopeHeader) => {
95
+ if (type !== "log") return true;
96
+ const [, payload] = item;
97
+ const logEvent = payload;
98
+ if (logEvent.items && logEvent.items.length > 0) {
99
+ for (const logItem of logEvent.items) {
100
+ if (envelopeHeader.sdk?.name === "sentry.spotlight.stdio") {
101
+ continue;
102
+ }
103
+ if (!relayStdioAsLogs) continue;
104
+ const logBody = typeof logItem.body === "string" ? logItem.body : String(logItem.body);
105
+ const trimmedBody = logBody.trim();
106
+ if (trimmedBody) {
107
+ const matches = fuzzySearcher.search(trimmedBody);
108
+ if (matches.length > 0) {
109
+ logger.debug("Detected Sentry logging in the process, disabling stdio relay");
110
+ relayStdioAsLogs = false;
111
+ return false;
112
+ }
113
+ }
114
+ }
115
+ }
116
+ return true;
117
+ };
118
+ const serverInstance = await tail({ port, cmdArgs: [], basePath, filesToServe, format }, logChecker);
119
+ if (!serverInstance) {
120
+ logger.error("Failed to start Spotlight sidecar server.");
121
+ logger.error(`The port ${port} might already be in use — most likely by another Spotlight instance.`);
122
+ process.exit(1);
123
+ }
124
+ const actualServerPort = serverInstance.address().port;
125
+ const spotlightUrl = getSpotlightURL(actualServerPort, LOCALHOST_HOST);
126
+ let shell = false;
127
+ let stdin = void 0;
128
+ const env = {
129
+ ...process.env,
130
+ SENTRY_SPOTLIGHT: spotlightUrl,
131
+ // We need the one below for Next.js projects -- they only allow NEXT_PUBLIC_ prefixed env vars
132
+ // on frontend code
133
+ NEXT_PUBLIC_SENTRY_SPOTLIGHT: spotlightUrl,
134
+ // This is not supported in all SDKs but worth adding
135
+ // for the ones that support it
136
+ SENTRY_TRACES_SAMPLE_RATE: "1"
137
+ };
138
+ if (cmdArgs.length === 0) {
139
+ const dockerCompose = detectDockerCompose();
140
+ const packageJson = detectPackageJson();
141
+ if (dockerCompose && packageJson) {
142
+ if (!process.stdin.isTTY) {
143
+ logger.error("Both Docker Compose and package.json detected, but cannot prompt in non-interactive mode.");
144
+ logger.error("Please specify a command explicitly or run in an interactive terminal.");
145
+ process.exit(1);
146
+ }
147
+ const choice = await promptUserChoice();
148
+ if (choice === "docker") {
149
+ logger.info(
150
+ `Detected Docker Compose project with ${dockerCompose.serviceNames.length} service(s): ${dockerCompose.serviceNames.join(", ")}`
151
+ );
152
+ env.SENTRY_SPOTLIGHT = getSpotlightURL(actualServerPort, DOCKER_HOST);
153
+ const command = buildDockerComposeCommand(dockerCompose);
154
+ cmdArgs = command.cmdArgs;
155
+ stdin = command.stdin;
156
+ delete env.COMPOSE_FILE;
157
+ } else {
158
+ logger.info(`Using package.json script: ${packageJson.scriptName}`);
159
+ cmdArgs = [packageJson.scriptCommand];
160
+ shell = true;
161
+ env.PATH = path.resolve("./node_modules/.bin") + path.delimiter + env.PATH;
162
+ }
163
+ } else if (dockerCompose) {
164
+ logger.info(
165
+ `Detected Docker Compose project with ${dockerCompose.serviceNames.length} service(s): ${dockerCompose.serviceNames.join(", ")}`
166
+ );
167
+ env.SENTRY_SPOTLIGHT = getSpotlightURL(actualServerPort, DOCKER_HOST);
168
+ const command = buildDockerComposeCommand(dockerCompose);
169
+ cmdArgs = command.cmdArgs;
170
+ stdin = command.stdin;
171
+ delete env.COMPOSE_FILE;
172
+ } else if (packageJson) {
173
+ logger.info(`Using package.json script: ${packageJson.scriptName}`);
174
+ cmdArgs = [packageJson.scriptCommand];
175
+ shell = true;
176
+ env.PATH = path.resolve("./node_modules/.bin") + path.delimiter + env.PATH;
177
+ }
178
+ }
179
+ if (cmdArgs.length === 0) {
180
+ logger.error("Error: No command specified to run and could not infer the command automatically.");
181
+ process.exit(1);
182
+ }
183
+ const cmdStr = cmdArgs.join(" ");
184
+ logger.info(`Starting command: ${cmdStr}`);
185
+ const stdinMode = stdin ? "pipe" : "inherit";
186
+ const runCmd = spawn(cmdArgs[0], cmdArgs.slice(1), {
187
+ cwd: process.cwd(),
188
+ env,
189
+ shell,
190
+ windowsVerbatimArguments: true,
191
+ windowsHide: true,
192
+ stdio: [stdinMode, "pipe", "pipe"]
193
+ });
194
+ const { stdout, stderr } = runCmd;
195
+ if (!stdout || !stderr) {
196
+ logger.error("Failed to create process streams");
197
+ process.exit(1);
198
+ }
199
+ if (stdin) {
200
+ if (!runCmd.stdin) {
201
+ logger.error("Failed to pipe Docker Compose override: stdin is not available");
202
+ process.exit(1);
203
+ }
204
+ runCmd.stdin.write(stdin);
205
+ runCmd.stdin.end();
206
+ }
207
+ const processLogLine = (line, level) => {
208
+ if (!relayStdioAsLogs) return;
209
+ const trimmedLine = line.trim();
210
+ if (!trimmedLine) return;
211
+ fuzzySearcher.add(trimmedLine);
212
+ const timestamp = Date.now() / 1e3;
213
+ const envelopeBuffer = createLogEnvelope(level, trimmedLine, timestamp);
214
+ const container = new EventContainer(SENTRY_CONTENT_TYPE, envelopeBuffer);
215
+ getBuffer().put(container);
216
+ };
217
+ let stdoutBuffer = "";
218
+ let stderrBuffer = "";
219
+ stdout.on("data", (data) => {
220
+ stdoutBuffer += data.toString();
221
+ const lines = stdoutBuffer.split("\n");
222
+ stdoutBuffer = lines.pop() || "";
223
+ for (const line of lines) {
224
+ processLogLine(line, "info");
225
+ }
226
+ });
227
+ stderr.on("data", (data) => {
228
+ stderrBuffer += data.toString();
229
+ const lines = stderrBuffer.split("\n");
230
+ stderrBuffer = lines.pop() || "";
231
+ for (const line of lines) {
232
+ processLogLine(line, "error");
233
+ }
234
+ });
235
+ runCmd.on("error", (err) => {
236
+ logger.error(`Failed to run ${cmdStr}:`);
237
+ logger.error(err);
238
+ process.exit(1);
239
+ });
240
+ runCmd.on("close", (code) => {
241
+ if (stdoutBuffer.trim()) {
242
+ processLogLine(stdoutBuffer, "info");
243
+ }
244
+ if (stderrBuffer.trim()) {
245
+ processLogLine(stderrBuffer, "error");
246
+ }
247
+ if (!code) {
248
+ logger.error(`${cmdStr} exited, terminating.`);
249
+ } else {
250
+ logger.error(`${cmdStr} exited with code ${code}.`);
251
+ }
252
+ process.exit(code);
253
+ });
254
+ const killRunCmd = () => {
255
+ if (runCmd.killed) return;
256
+ stdout.destroy();
257
+ stderr.destroy();
258
+ runCmd.kill();
259
+ };
260
+ runCmd.on("spawn", () => {
261
+ runCmd.removeAllListeners("spawn");
262
+ runCmd.removeAllListeners("error");
263
+ process.on("SIGINT", killRunCmd);
264
+ process.on("SIGTERM", killRunCmd);
265
+ process.on("beforeExit", killRunCmd);
266
+ });
267
+ }
268
+ export {
269
+ run as default
270
+ };
271
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sources":["../../../src/server/cli/run.ts"],"sourcesContent":["import { spawn } from \"node:child_process\";\nimport { readFileSync } from \"node:fs\";\nimport type { AddressInfo } from \"node:net\";\nimport * as path from \"node:path\";\nimport * as readline from \"node:readline\";\nimport type { SerializedLog } from \"@sentry/core\";\nimport { Searcher } from \"fast-fuzzy\";\nimport { uuidv7 } from \"uuidv7\";\nimport { SENTRY_CONTENT_TYPE } from \"../constants.ts\";\nimport { logger } from \"../logger.ts\";\nimport type { SentryLogEvent } from \"../parser/types.ts\";\nimport type { CLIHandlerOptions } from \"../types/cli.ts\";\nimport { buildDockerComposeCommand, detectDockerCompose } from \"../utils/docker-compose.ts\";\nimport { getSpotlightURL } from \"../utils/extras.ts\";\nimport { EventContainer, getBuffer } from \"../utils/index.ts\";\nimport tail, { type OnItemCallback } from \"./tail.ts\";\n\nconst SPOTLIGHT_VERSION = process.env.npm_package_version || \"unknown\";\n\n// Environment variable host configurations\nconst LOCALHOST_HOST = \"localhost\";\nconst DOCKER_HOST = \"host.docker.internal\";\n\n/**\n * Detect if there's a package.json with runnable scripts\n */\nfunction detectPackageJson(): { scriptName: string; scriptCommand: string } | null {\n try {\n const scripts = JSON.parse(readFileSync(\"./package.json\", \"utf-8\")).scripts;\n const scriptName = [\"dev\", \"develop\", \"serve\", \"start\"].find(name => scripts[name]);\n if (!scriptName || !scripts[scriptName]) {\n return null;\n }\n return { scriptName, scriptCommand: scripts[scriptName] };\n } catch {\n // pass\n }\n return null;\n}\n\n/**\n * Prompt the user to choose between Docker Compose and package.json\n */\nasync function promptUserChoice(): Promise<\"docker\" | \"package\"> {\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout,\n });\n\n return new Promise(resolve => {\n console.log(\"\\n⚠️ Both Docker Compose and package.json detected!\");\n console.log(\"\\nWhich would you like to use?\");\n console.log(\" 1) docker compose\");\n console.log(\" 2) package.json\");\n\n rl.question(\"Enter your choice (1 or 2): \", answer => {\n rl.close();\n const choice = answer.trim();\n const selected = choice === \"2\" ? \"package\" : \"docker\";\n logger.info(`Selected: ${selected === \"docker\" ? \"Docker compose\" : \"package.json\"}`);\n resolve(selected);\n });\n });\n}\n\nfunction createLogEnvelope(level: \"info\" | \"error\", body: string, timestamp: number): Buffer {\n const envelopeHeader = {\n sdk: {\n name: \"sentry.spotlight.stdio\",\n version: SPOTLIGHT_VERSION,\n },\n };\n\n const logItem: SerializedLog = {\n timestamp,\n level,\n body,\n attributes: {},\n };\n\n const logPayload: SentryLogEvent = {\n type: \"log\",\n event_id: uuidv7(),\n timestamp,\n items: [\n {\n ...logItem,\n id: uuidv7(),\n severity_number: level === \"error\" ? 17 : 9, // ERROR=17, INFO=9 per OpenTelemetry spec\n sdk: undefined,\n },\n ],\n };\n\n const payloadJson = JSON.stringify(logPayload);\n const payloadBuffer = Buffer.from(payloadJson, \"utf-8\");\n\n const itemHeader = {\n type: \"log\",\n length: payloadBuffer.length, // Use byte length, not string length\n item_count: 1,\n content_type: \"application/json\",\n };\n\n const parts = [JSON.stringify(envelopeHeader), JSON.stringify(itemHeader), payloadJson];\n\n return Buffer.from(`${parts.join(\"\\n\")}\\n`, \"utf-8\");\n}\n\nexport default async function run({ port, cmdArgs, basePath, filesToServe, format }: CLIHandlerOptions) {\n let relayStdioAsLogs = true;\n\n const fuzzySearcher = new Searcher([] as string[], {\n threshold: 0.8,\n ignoreCase: false,\n });\n\n const logChecker: OnItemCallback = (type, item, envelopeHeader) => {\n if (type !== \"log\") return true;\n\n const [, payload] = item;\n const logEvent = payload as SentryLogEvent;\n\n if (logEvent.items && logEvent.items.length > 0) {\n for (const logItem of logEvent.items) {\n // Check if this is a stdio log from Spotlight itself\n if (envelopeHeader.sdk?.name === \"sentry.spotlight.stdio\") {\n continue;\n }\n\n if (!relayStdioAsLogs) continue;\n\n const logBody = typeof logItem.body === \"string\" ? logItem.body : String(logItem.body);\n const trimmedBody = logBody.trim();\n\n if (trimmedBody) {\n const matches = fuzzySearcher.search(trimmedBody);\n if (matches.length > 0) {\n logger.debug(\"Detected Sentry logging in the process, disabling stdio relay\");\n relayStdioAsLogs = false;\n return false;\n }\n }\n }\n }\n\n return true;\n };\n\n const serverInstance = await tail({ port, cmdArgs: [], basePath, filesToServe, format }, logChecker);\n if (!serverInstance) {\n logger.error(\"Failed to start Spotlight sidecar server.\");\n logger.error(`The port ${port} might already be in use — most likely by another Spotlight instance.`);\n process.exit(1);\n }\n\n // We *MUST* have an instance address and a port here\n // as not having that indicates either the server did not start\n // or started in a weird manner (like over a unix socket)\n const actualServerPort = (serverInstance.address() as AddressInfo).port;\n const spotlightUrl = getSpotlightURL(actualServerPort, LOCALHOST_HOST);\n let shell = false;\n let stdin: string | undefined = undefined;\n const env = {\n ...process.env,\n SENTRY_SPOTLIGHT: spotlightUrl,\n // We need the one below for Next.js projects -- they only allow NEXT_PUBLIC_ prefixed env vars\n // on frontend code\n NEXT_PUBLIC_SENTRY_SPOTLIGHT: spotlightUrl,\n // This is not supported in all SDKs but worth adding\n // for the ones that support it\n SENTRY_TRACES_SAMPLE_RATE: \"1\",\n } as {\n PATH: string;\n SENTRY_SPOTLIGHT: string;\n NEXT_PUBLIC_SENTRY_SPOTLIGHT: string;\n SENTRY_TRACES_SAMPLE_RATE: string;\n [key: string]: string;\n };\n if (cmdArgs.length === 0) {\n const dockerCompose = detectDockerCompose();\n const packageJson = detectPackageJson();\n\n // If both Docker Compose and package.json are detected, ask the user which one to use\n if (dockerCompose && packageJson) {\n if (!process.stdin.isTTY) {\n logger.error(\"Both Docker Compose and package.json detected, but cannot prompt in non-interactive mode.\");\n logger.error(\"Please specify a command explicitly or run in an interactive terminal.\");\n process.exit(1);\n }\n const choice = await promptUserChoice();\n\n if (choice === \"docker\") {\n logger.info(\n `Detected Docker Compose project with ${dockerCompose.serviceNames.length} service(s): ${dockerCompose.serviceNames.join(\", \")}`,\n );\n // Use host.docker.internal for backend services to access the host machine\n env.SENTRY_SPOTLIGHT = getSpotlightURL(actualServerPort, DOCKER_HOST);\n const command = buildDockerComposeCommand(dockerCompose);\n cmdArgs = command.cmdArgs;\n stdin = command.stdin;\n // Always unset COMPOSE_FILE to avoid conflicts with explicit -f flags\n delete env.COMPOSE_FILE;\n } else {\n logger.info(`Using package.json script: ${packageJson.scriptName}`);\n cmdArgs = [packageJson.scriptCommand];\n shell = true;\n env.PATH = path.resolve(\"./node_modules/.bin\") + path.delimiter + env.PATH;\n }\n } else if (dockerCompose) {\n logger.info(\n `Detected Docker Compose project with ${dockerCompose.serviceNames.length} service(s): ${dockerCompose.serviceNames.join(\", \")}`,\n );\n // Use host.docker.internal for backend services to access the host machine\n env.SENTRY_SPOTLIGHT = getSpotlightURL(actualServerPort, DOCKER_HOST);\n\n const command = buildDockerComposeCommand(dockerCompose);\n cmdArgs = command.cmdArgs;\n stdin = command.stdin;\n // Always unset COMPOSE_FILE to avoid conflicts with explicit -f flags\n delete env.COMPOSE_FILE;\n } else if (packageJson) {\n logger.info(`Using package.json script: ${packageJson.scriptName}`);\n cmdArgs = [packageJson.scriptCommand];\n shell = true;\n env.PATH = path.resolve(\"./node_modules/.bin\") + path.delimiter + env.PATH;\n }\n }\n if (cmdArgs.length === 0) {\n logger.error(\"Error: No command specified to run and could not infer the command automatically.\");\n process.exit(1);\n }\n const cmdStr = cmdArgs.join(\" \");\n logger.info(`Starting command: ${cmdStr}`);\n // When we have Docker Compose override YAML (for -f -), we need to pipe stdin\n // Otherwise, inherit stdin to relay user input to the downstream process\n const stdinMode: \"pipe\" | \"inherit\" = stdin ? \"pipe\" : \"inherit\";\n const runCmd = spawn(cmdArgs[0], cmdArgs.slice(1), {\n cwd: process.cwd(),\n env,\n shell,\n windowsVerbatimArguments: true,\n windowsHide: true,\n stdio: [stdinMode, \"pipe\", \"pipe\"],\n });\n\n const { stdout, stderr } = runCmd;\n if (!stdout || !stderr) {\n logger.error(\"Failed to create process streams\");\n process.exit(1);\n }\n\n // If our command has a stdin input _and_ we can send to stdin, write and close\n if (stdin) {\n if (!runCmd.stdin) {\n logger.error(\"Failed to pipe Docker Compose override: stdin is not available\");\n process.exit(1);\n }\n runCmd.stdin.write(stdin);\n runCmd.stdin.end();\n }\n\n const processLogLine = (line: string, level: \"info\" | \"error\") => {\n if (!relayStdioAsLogs) return;\n const trimmedLine = line.trim();\n if (!trimmedLine) return;\n\n fuzzySearcher.add(trimmedLine);\n\n const timestamp = Date.now() / 1000;\n const envelopeBuffer = createLogEnvelope(level, trimmedLine, timestamp);\n\n const container = new EventContainer(SENTRY_CONTENT_TYPE, envelopeBuffer);\n // Add to buffer - this will automatically trigger all subscribers\n // including the onEnvelope callback registered in tail()\n getBuffer().put(container);\n };\n\n let stdoutBuffer = \"\";\n let stderrBuffer = \"\";\n\n // Stream stdout as info-level logs\n stdout.on(\"data\", (data: Buffer) => {\n stdoutBuffer += data.toString();\n const lines = stdoutBuffer.split(\"\\n\");\n // Keep the last partial line in the buffer\n stdoutBuffer = lines.pop() || \"\";\n\n for (const line of lines) {\n processLogLine(line, \"info\");\n }\n });\n\n // Stream stderr as error-level logs\n stderr.on(\"data\", (data: Buffer) => {\n stderrBuffer += data.toString();\n const lines = stderrBuffer.split(\"\\n\");\n // Keep the last partial line in the buffer\n stderrBuffer = lines.pop() || \"\";\n\n for (const line of lines) {\n processLogLine(line, \"error\");\n }\n });\n\n runCmd.on(\"error\", err => {\n logger.error(`Failed to run ${cmdStr}:`);\n logger.error(err);\n process.exit(1);\n });\n\n runCmd.on(\"close\", code => {\n // Handle any remaining buffered lines\n if (stdoutBuffer.trim()) {\n processLogLine(stdoutBuffer, \"info\");\n }\n if (stderrBuffer.trim()) {\n processLogLine(stderrBuffer, \"error\");\n }\n\n if (!code) {\n logger.error(`${cmdStr} exited, terminating.`);\n } else {\n logger.error(`${cmdStr} exited with code ${code}.`);\n }\n process.exit(code);\n });\n const killRunCmd = () => {\n if (runCmd.killed) return;\n stdout.destroy();\n stderr.destroy();\n runCmd.kill();\n };\n runCmd.on(\"spawn\", () => {\n runCmd.removeAllListeners(\"spawn\");\n runCmd.removeAllListeners(\"error\");\n process.on(\"SIGINT\", killRunCmd);\n process.on(\"SIGTERM\", killRunCmd);\n process.on(\"beforeExit\", killRunCmd);\n });\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { CLIHandlerOptions } from '../types/cli.ts';
2
+ export default function server({ port, basePath, filesToServe }: CLIHandlerOptions): Promise<import('http').Server<typeof import('http').IncomingMessage, typeof import('http').ServerResponse> | undefined>;
@@ -0,0 +1,13 @@
1
+ import { setupSpotlight } from "../main.js";
2
+ async function server({ port, basePath, filesToServe }) {
3
+ return await setupSpotlight({
4
+ port,
5
+ basePath,
6
+ filesToServe,
7
+ isStandalone: true
8
+ });
9
+ }
10
+ export {
11
+ server as default
12
+ };
13
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sources":["../../../src/server/cli/server.ts"],"sourcesContent":["import { setupSpotlight } from \"../main.ts\";\nimport type { CLIHandlerOptions } from \"../types/cli.ts\";\n\nexport default async function server({ port, basePath, filesToServe }: CLIHandlerOptions) {\n return await setupSpotlight({\n port,\n basePath,\n filesToServe,\n isStandalone: true,\n });\n}\n"],"names":[],"mappings":";AAGA,eAA8B,OAAO,EAAE,MAAM,UAAU,gBAAmC;AACxF,SAAO,MAAM,eAAe;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc;AAAA,EAAA,CACf;AACH;"}
@@ -0,0 +1,8 @@
1
+ import { ServerType } from '@hono/node-server';
2
+ import { ParsedEnvelope } from '../parser/index.ts';
3
+ import { CLIHandlerOptions } from '../types/cli.ts';
4
+ export type OnItemCallback = (type: string, item: ParsedEnvelope["envelope"][1][number], envelopeHeader: ParsedEnvelope["envelope"][0]) => boolean;
5
+ export declare const NAME_TO_TYPE_MAPPING: Record<string, string[]>;
6
+ export declare const EVERYTHING_MAGIC_WORDS: Set<string>;
7
+ export declare const SUPPORTED_TAIL_ARGS: Set<string>;
8
+ export default function tail({ port, cmdArgs, basePath, filesToServe, format }: CLIHandlerOptions, onItem?: OnItemCallback): Promise<ServerType | undefined>;