@runtimescope/collector 0.10.9 → 0.10.11

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 (72) hide show
  1. package/dist/{chunk-YAXXO3X4.js → chunk-VNRQCY6B.js} +51 -2
  2. package/dist/chunk-VNRQCY6B.js.map +1 -0
  3. package/dist/dashboard-assets/assets/api-map-page-DHlcR_sh.js +1 -0
  4. package/dist/dashboard-assets/assets/badge-BGgXl2qy.js +1 -0
  5. package/dist/dashboard-assets/assets/breadcrumbs-page-BK-FB2nG.js +16 -0
  6. package/dist/dashboard-assets/assets/capex-page-BVJ3T1W4.js +57 -0
  7. package/dist/dashboard-assets/assets/chevron-right-D0z93_PM.js +6 -0
  8. package/dist/dashboard-assets/assets/circle-check-big-DMEGTtSI.js +6 -0
  9. package/dist/dashboard-assets/assets/clock-BZReVxQC.js +6 -0
  10. package/dist/dashboard-assets/assets/code-block-BfLeZt-6.js +1 -0
  11. package/dist/dashboard-assets/assets/console-page-DMgLtlCk.js +7 -0
  12. package/dist/dashboard-assets/assets/data-table-CxVXG3zy.js +6 -0
  13. package/dist/dashboard-assets/assets/database-page-BmpNk_GJ.js +1 -0
  14. package/dist/dashboard-assets/assets/detail-panel-CxidKK1j.js +1 -0
  15. package/dist/dashboard-assets/assets/dollar-sign-DqZoTS1i.js +6 -0
  16. package/dist/dashboard-assets/assets/download-OeUZzFM9.js +6 -0
  17. package/dist/dashboard-assets/assets/empty-config-state-BRw-Dnk-.js +4 -0
  18. package/dist/dashboard-assets/assets/events-page-Bhde5vnj.js +1 -0
  19. package/dist/dashboard-assets/assets/export-button-BioZ3ot5.js +3 -0
  20. package/dist/dashboard-assets/assets/file-text-CTqS_5sj.js +6 -0
  21. package/dist/dashboard-assets/assets/filter-bar-CCwrTxz_.js +1 -0
  22. package/dist/dashboard-assets/assets/folder-open-g1ZHHoW-.js +6 -0
  23. package/dist/dashboard-assets/assets/format-CF_gowqw.js +1 -0
  24. package/dist/dashboard-assets/assets/git-page-drqH-ymG.js +9 -0
  25. package/dist/dashboard-assets/assets/hard-drive-DVtZVR9y.js +6 -0
  26. package/dist/dashboard-assets/assets/home-page-Bro6iPXa.js +11 -0
  27. package/dist/dashboard-assets/assets/index-DgQg-mjd.js +269 -0
  28. package/dist/dashboard-assets/assets/index-e2kYo9r7.css +1 -0
  29. package/dist/dashboard-assets/assets/info-aicvFsRA.js +6 -0
  30. package/dist/dashboard-assets/assets/infra-page-CXFCwaut.js +13 -0
  31. package/dist/dashboard-assets/assets/issue-detector-CH2FjMfV.js +1 -0
  32. package/dist/dashboard-assets/assets/issues-page-207U1dk-.js +1 -0
  33. package/dist/dashboard-assets/assets/json-viewer-CtsL_JTK.js +1 -0
  34. package/dist/dashboard-assets/assets/kitchen-sink-BN8WXBVu.js +12 -0
  35. package/dist/dashboard-assets/assets/memory-page-xoARxvSA.js +12 -0
  36. package/dist/dashboard-assets/assets/message-square-DY6473o6.js +6 -0
  37. package/dist/dashboard-assets/assets/metric-card-BDGLEpmZ.js +11 -0
  38. package/dist/dashboard-assets/assets/minus-CepSrXzu.js +6 -0
  39. package/dist/dashboard-assets/assets/network-page-CCASVWTx.js +24 -0
  40. package/dist/dashboard-assets/assets/notes-page-Bw8s5HXO.js +7 -0
  41. package/dist/dashboard-assets/assets/overview-page-If7s1dBy.js +6 -0
  42. package/dist/dashboard-assets/assets/performance-page-Ch3umaz-.js +1 -0
  43. package/dist/dashboard-assets/assets/play-DSlXvNRl.js +6 -0
  44. package/dist/dashboard-assets/assets/processes-page-C2RwU22t.js +1 -0
  45. package/dist/dashboard-assets/assets/project-view-CFMjSV9u.js +17 -0
  46. package/dist/dashboard-assets/assets/renders-page-Ca4xJRtx.js +1 -0
  47. package/dist/dashboard-assets/assets/rules-page-Iam5wymd.js +1 -0
  48. package/dist/dashboard-assets/assets/runtime-page-DEbhzxha.js +2 -0
  49. package/dist/dashboard-assets/assets/save-CCeVXlI4.js +6 -0
  50. package/dist/dashboard-assets/assets/sdk-page-BoPzW-t_.js +6 -0
  51. package/dist/dashboard-assets/assets/sessions-page-CIPs23pt.js +1 -0
  52. package/dist/dashboard-assets/assets/sessions-page-DSve7fIB.js +1 -0
  53. package/dist/dashboard-assets/assets/settings-page-DuzVTOPn.js +11 -0
  54. package/dist/dashboard-assets/assets/sparkline-DoDs4Mh8.js +1 -0
  55. package/dist/dashboard-assets/assets/square-DiX9jH4C.js +6 -0
  56. package/dist/dashboard-assets/assets/state-page-CqiOtZuw.js +1 -0
  57. package/dist/dashboard-assets/assets/status-dot-C-xjt4D6.js +1 -0
  58. package/dist/dashboard-assets/assets/tabs-yqhh6iCp.js +1 -0
  59. package/dist/dashboard-assets/assets/tag-4Cn073OD.js +6 -0
  60. package/dist/dashboard-assets/assets/tasks-page-erlKdBtX.js +27 -0
  61. package/dist/dashboard-assets/assets/textarea-BROdxV-a.js +1 -0
  62. package/dist/dashboard-assets/assets/topbar-DJt5eMx5.js +1 -0
  63. package/dist/dashboard-assets/assets/trash-2-rsBJ0FiG.js +6 -0
  64. package/dist/dashboard-assets/assets/use-connected-c8-oDf2s.js +1 -0
  65. package/dist/dashboard-assets/assets/wifi-omZdmnyZ.js +6 -0
  66. package/dist/dashboard-assets/assets/zap-BaSm59wW.js +6 -0
  67. package/dist/dashboard-assets/index.html +16 -0
  68. package/dist/index.d.ts +8 -0
  69. package/dist/index.js +1 -1
  70. package/dist/standalone.js +1 -1
  71. package/package.json +1 -1
  72. package/dist/chunk-YAXXO3X4.js.map +0 -1
@@ -5042,6 +5042,30 @@ var HttpServer = class {
5042
5042
  }
5043
5043
  return null;
5044
5044
  }
5045
+ /**
5046
+ * Resolve the directory containing the built dashboard SPA. The tsup
5047
+ * onSuccess hook copies packages/dashboard/dist/ into the collector's
5048
+ * dist/dashboard-assets/ so the dashboard ships inside the @runtimescope/
5049
+ * collector npm package. Cached after first resolution.
5050
+ */
5051
+ dashboardAssetsRoot = null;
5052
+ resolveDashboardAssets() {
5053
+ if (this.dashboardAssetsRoot) return this.dashboardAssetsRoot;
5054
+ const __dir = dirname2(fileURLToPath(import.meta.url));
5055
+ const candidates = [
5056
+ resolve(__dir, "dashboard-assets"),
5057
+ // npm published: dist/dashboard-assets/
5058
+ resolve(__dir, "../../dashboard/dist")
5059
+ // monorepo dev: sibling package
5060
+ ];
5061
+ for (const p of candidates) {
5062
+ if (existsSync6(resolve(p, "index.html"))) {
5063
+ this.dashboardAssetsRoot = p;
5064
+ return p;
5065
+ }
5066
+ }
5067
+ return null;
5068
+ }
5045
5069
  getPort() {
5046
5070
  return this.activePort;
5047
5071
  }
@@ -5216,7 +5240,7 @@ var HttpServer = class {
5216
5240
  res.end();
5217
5241
  return;
5218
5242
  }
5219
- const isPublic = url.pathname === "/api/health" || url.pathname === "/readyz" || url.pathname === "/metrics" || url.pathname === "/runtimescope.js" || url.pathname === "/snippet";
5243
+ const isPublic = url.pathname === "/api/health" || url.pathname === "/readyz" || url.pathname === "/metrics" || url.pathname === "/runtimescope.js" || url.pathname === "/snippet" || url.pathname === "/dashboard" || url.pathname.startsWith("/dashboard/") || url.pathname.startsWith("/assets/");
5220
5244
  const workspaceKeysExist = !!this.pmStore?.hasActiveApiKeys?.();
5221
5245
  const authActive = !!this.authManager?.isEnabled() || workspaceKeysExist;
5222
5246
  const caller = {
@@ -5250,6 +5274,31 @@ var HttpServer = class {
5250
5274
  }
5251
5275
  return;
5252
5276
  }
5277
+ const isDashboardRoute = url.pathname === "/dashboard" || url.pathname.startsWith("/dashboard/");
5278
+ const isAssetRoute = url.pathname.startsWith("/assets/");
5279
+ if (req.method === "GET" && (isDashboardRoute || isAssetRoute)) {
5280
+ const assetsRoot = this.resolveDashboardAssets();
5281
+ if (!assetsRoot) {
5282
+ res.writeHead(404, { "Content-Type": "text/plain" });
5283
+ res.end("Dashboard assets not found. Run: npm run build -w packages/dashboard");
5284
+ return;
5285
+ }
5286
+ const relativePath = isAssetRoute ? url.pathname.slice(1) : url.pathname === "/dashboard" || url.pathname === "/dashboard/" ? "index.html" : url.pathname.slice("/dashboard/".length);
5287
+ const filePath = resolve(assetsRoot, relativePath);
5288
+ const hasExtension = /\.[a-zA-Z0-9]+$/.test(relativePath);
5289
+ const targetPath = existsSync6(filePath) ? filePath : hasExtension || isAssetRoute ? null : resolve(assetsRoot, "index.html");
5290
+ if (!targetPath || !existsSync6(targetPath)) {
5291
+ res.writeHead(404, { "Content-Type": "text/plain" });
5292
+ res.end("Not found");
5293
+ return;
5294
+ }
5295
+ const ext = targetPath.slice(targetPath.lastIndexOf(".")).toLowerCase();
5296
+ const contentType = ext === ".html" ? "text/html; charset=utf-8" : ext === ".js" ? "application/javascript; charset=utf-8" : ext === ".mjs" ? "application/javascript; charset=utf-8" : ext === ".css" ? "text/css; charset=utf-8" : ext === ".json" ? "application/json; charset=utf-8" : ext === ".svg" ? "image/svg+xml" : ext === ".png" ? "image/png" : ext === ".jpg" || ext === ".jpeg" ? "image/jpeg" : ext === ".ico" ? "image/x-icon" : ext === ".woff" ? "font/woff" : ext === ".woff2" ? "font/woff2" : "application/octet-stream";
5297
+ const cacheControl = targetPath.endsWith("index.html") || targetPath.endsWith("/index.html") ? "no-cache" : "public, max-age=31536000, immutable";
5298
+ res.writeHead(200, { "Content-Type": contentType, "Cache-Control": cacheControl });
5299
+ res.end(readFileSync5(targetPath));
5300
+ return;
5301
+ }
5253
5302
  if (req.method === "GET" && url.pathname === "/snippet") {
5254
5303
  const appName = (url.searchParams.get("app") || "my-app").replace(/[^a-zA-Z0-9_-]/g, "");
5255
5304
  const projectId = url.searchParams.get("project_id") || "proj_xxx";
@@ -7532,4 +7581,4 @@ export {
7532
7581
  parseSessionJsonl,
7533
7582
  ProjectDiscovery
7534
7583
  };
7535
- //# sourceMappingURL=chunk-YAXXO3X4.js.map
7584
+ //# sourceMappingURL=chunk-VNRQCY6B.js.map