@sudobility/testomniac_ui 0.0.23 → 0.0.26

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 (169) hide show
  1. package/dist/components/apiKeys/EntityApiKeysPanel.js +2 -2
  2. package/dist/components/apiKeys/EntityApiKeysPanel.js.map +1 -1
  3. package/dist/components/bundles/AddToBundleButton.d.ts.map +1 -1
  4. package/dist/components/bundles/AddToBundleButton.js +1 -1
  5. package/dist/components/bundles/AddToBundleButton.js.map +1 -1
  6. package/dist/components/cells/ListCell.d.ts.map +1 -1
  7. package/dist/components/cells/ListCell.js +3 -3
  8. package/dist/components/cells/ListCell.js.map +1 -1
  9. package/dist/components/credentials/CredentialManagementSection.d.ts.map +1 -1
  10. package/dist/components/credentials/CredentialManagementSection.js +2 -2
  11. package/dist/components/credentials/CredentialManagementSection.js.map +1 -1
  12. package/dist/components/dashboard/DashboardSidebar.d.ts.map +1 -1
  13. package/dist/components/dashboard/DashboardSidebar.js +64 -25
  14. package/dist/components/dashboard/DashboardSidebar.js.map +1 -1
  15. package/dist/components/data/DataTable.d.ts.map +1 -1
  16. package/dist/components/data/DataTable.js +9 -9
  17. package/dist/components/data/DataTable.js.map +1 -1
  18. package/dist/components/data/JsonViewer.js +1 -1
  19. package/dist/components/data/JsonViewer.js.map +1 -1
  20. package/dist/components/navigation/BackLink.js +1 -1
  21. package/dist/components/navigation/BackLink.js.map +1 -1
  22. package/dist/components/pages/PagesListView.d.ts.map +1 -1
  23. package/dist/components/pages/PagesListView.js +2 -2
  24. package/dist/components/pages/PagesListView.js.map +1 -1
  25. package/dist/components/pages/PagesMapView.d.ts.map +1 -1
  26. package/dist/components/pages/PagesMapView.js +129 -76
  27. package/dist/components/pages/PagesMapView.js.map +1 -1
  28. package/dist/components/scan-settings/EnvironmentScanSettingsSection.d.ts +7 -0
  29. package/dist/components/scan-settings/EnvironmentScanSettingsSection.d.ts.map +1 -0
  30. package/dist/components/scan-settings/EnvironmentScanSettingsSection.js +52 -0
  31. package/dist/components/scan-settings/EnvironmentScanSettingsSection.js.map +1 -0
  32. package/dist/components/scan-settings/ProductScanDefaultsSection.d.ts +9 -0
  33. package/dist/components/scan-settings/ProductScanDefaultsSection.d.ts.map +1 -0
  34. package/dist/components/scan-settings/ProductScanDefaultsSection.js +48 -0
  35. package/dist/components/scan-settings/ProductScanDefaultsSection.js.map +1 -0
  36. package/dist/components/scan-settings/ScanSettingsPanel.d.ts +15 -0
  37. package/dist/components/scan-settings/ScanSettingsPanel.d.ts.map +1 -0
  38. package/dist/components/scan-settings/ScanSettingsPanel.js +12 -0
  39. package/dist/components/scan-settings/ScanSettingsPanel.js.map +1 -0
  40. package/dist/components/scan-settings/index.d.ts +4 -0
  41. package/dist/components/scan-settings/index.d.ts.map +1 -0
  42. package/dist/components/scan-settings/index.js +4 -0
  43. package/dist/components/scan-settings/index.js.map +1 -0
  44. package/dist/components/scanner/EventLog.d.ts.map +1 -1
  45. package/dist/components/scanner/EventLog.js +4 -4
  46. package/dist/components/scanner/EventLog.js.map +1 -1
  47. package/dist/components/scanner/LiveCounters.d.ts.map +1 -1
  48. package/dist/components/scanner/LiveCounters.js +3 -1
  49. package/dist/components/scanner/LiveCounters.js.map +1 -1
  50. package/dist/components/scanner/PhaseIndicator.d.ts.map +1 -1
  51. package/dist/components/scanner/PhaseIndicator.js +7 -7
  52. package/dist/components/scanner/PhaseIndicator.js.map +1 -1
  53. package/dist/components/scanner/RunSummaryCard.js +1 -1
  54. package/dist/components/scanner/RunSummaryCard.js.map +1 -1
  55. package/dist/components/scanner/ScanForm.js +1 -1
  56. package/dist/components/scanner/ScanForm.js.map +1 -1
  57. package/dist/components/scanner/ScanProgressPanel.d.ts.map +1 -1
  58. package/dist/components/scanner/ScanProgressPanel.js +1 -1
  59. package/dist/components/scanner/ScanProgressPanel.js.map +1 -1
  60. package/dist/components/scanner/StatusBadge.js +1 -1
  61. package/dist/components/scanner/StatusBadge.js.map +1 -1
  62. package/dist/components/scenarios/AddScenarioForm.js +1 -1
  63. package/dist/components/scenarios/AddScenarioForm.js.map +1 -1
  64. package/dist/components/scripts/ScriptPanel.js +1 -1
  65. package/dist/components/scripts/ScriptPanel.js.map +1 -1
  66. package/dist/config/priorityConfig.js +10 -10
  67. package/dist/config/priorityConfig.js.map +1 -1
  68. package/dist/context/routing.d.ts +2 -0
  69. package/dist/context/routing.d.ts.map +1 -1
  70. package/dist/context/routing.js.map +1 -1
  71. package/dist/index.d.ts +1 -0
  72. package/dist/index.d.ts.map +1 -1
  73. package/dist/index.js +1 -0
  74. package/dist/index.js.map +1 -1
  75. package/dist/pages/BundleDetailPage.d.ts.map +1 -1
  76. package/dist/pages/BundleDetailPage.js +7 -7
  77. package/dist/pages/BundleDetailPage.js.map +1 -1
  78. package/dist/pages/BundlesPage.d.ts.map +1 -1
  79. package/dist/pages/BundlesPage.js +6 -72
  80. package/dist/pages/BundlesPage.js.map +1 -1
  81. package/dist/pages/CreateProductPage.d.ts.map +1 -1
  82. package/dist/pages/CreateProductPage.js +25 -9
  83. package/dist/pages/CreateProductPage.js.map +1 -1
  84. package/dist/pages/DashboardOverview.d.ts.map +1 -1
  85. package/dist/pages/DashboardOverview.js +33 -32
  86. package/dist/pages/DashboardOverview.js.map +1 -1
  87. package/dist/pages/FindingsListPage.d.ts.map +1 -1
  88. package/dist/pages/FindingsListPage.js +7 -9
  89. package/dist/pages/FindingsListPage.js.map +1 -1
  90. package/dist/pages/PageDetailPage.d.ts.map +1 -1
  91. package/dist/pages/PageDetailPage.js +8 -8
  92. package/dist/pages/PageDetailPage.js.map +1 -1
  93. package/dist/pages/PageGraphPage.d.ts.map +1 -1
  94. package/dist/pages/PageGraphPage.js +3 -3
  95. package/dist/pages/PageGraphPage.js.map +1 -1
  96. package/dist/pages/PageStateDetailPage.d.ts.map +1 -1
  97. package/dist/pages/PageStateDetailPage.js +11 -11
  98. package/dist/pages/PageStateDetailPage.js.map +1 -1
  99. package/dist/pages/PagesPage.js +7 -7
  100. package/dist/pages/PagesPage.js.map +1 -1
  101. package/dist/pages/PatternsPage.d.ts.map +1 -1
  102. package/dist/pages/PatternsPage.js +4 -4
  103. package/dist/pages/PatternsPage.js.map +1 -1
  104. package/dist/pages/PersonasPage.d.ts.map +1 -1
  105. package/dist/pages/PersonasPage.js +4 -4
  106. package/dist/pages/PersonasPage.js.map +1 -1
  107. package/dist/pages/ProductSettingsPage.d.ts +7 -0
  108. package/dist/pages/ProductSettingsPage.d.ts.map +1 -0
  109. package/dist/pages/ProductSettingsPage.js +16 -0
  110. package/dist/pages/ProductSettingsPage.js.map +1 -0
  111. package/dist/pages/RunRedirect.js +2 -2
  112. package/dist/pages/RunRedirect.js.map +1 -1
  113. package/dist/pages/RunSurfaceRunDetailPage.d.ts.map +1 -1
  114. package/dist/pages/RunSurfaceRunDetailPage.js +4 -4
  115. package/dist/pages/RunSurfaceRunDetailPage.js.map +1 -1
  116. package/dist/pages/RunSurfaceRunsPage.js +1 -1
  117. package/dist/pages/RunSurfaceRunsPage.js.map +1 -1
  118. package/dist/pages/RunTestInteractionRunDetailPage.d.ts.map +1 -1
  119. package/dist/pages/RunTestInteractionRunDetailPage.js +3 -3
  120. package/dist/pages/RunTestInteractionRunDetailPage.js.map +1 -1
  121. package/dist/pages/RunTestInteractionRunsPage.d.ts.map +1 -1
  122. package/dist/pages/RunTestInteractionRunsPage.js +2 -2
  123. package/dist/pages/RunTestInteractionRunsPage.js.map +1 -1
  124. package/dist/pages/RunnerGraphPage.js +5 -5
  125. package/dist/pages/RunnerGraphPage.js.map +1 -1
  126. package/dist/pages/RunnerSettingsPage.d.ts.map +1 -1
  127. package/dist/pages/RunnerSettingsPage.js +2 -1
  128. package/dist/pages/RunnerSettingsPage.js.map +1 -1
  129. package/dist/pages/ScaffoldDetailPage.d.ts.map +1 -1
  130. package/dist/pages/ScaffoldDetailPage.js +7 -7
  131. package/dist/pages/ScaffoldDetailPage.js.map +1 -1
  132. package/dist/pages/ScaffoldsPage.d.ts.map +1 -1
  133. package/dist/pages/ScaffoldsPage.js +3 -3
  134. package/dist/pages/ScaffoldsPage.js.map +1 -1
  135. package/dist/pages/ScanProgressPage.d.ts.map +1 -1
  136. package/dist/pages/ScanProgressPage.js +1 -1
  137. package/dist/pages/ScanProgressPage.js.map +1 -1
  138. package/dist/pages/SchedulesPage.d.ts.map +1 -1
  139. package/dist/pages/SchedulesPage.js +4 -4
  140. package/dist/pages/SchedulesPage.js.map +1 -1
  141. package/dist/pages/StartScanPage.d.ts.map +1 -1
  142. package/dist/pages/StartScanPage.js +7 -7
  143. package/dist/pages/StartScanPage.js.map +1 -1
  144. package/dist/pages/StatusPage.d.ts.map +1 -1
  145. package/dist/pages/StatusPage.js +25 -26
  146. package/dist/pages/StatusPage.js.map +1 -1
  147. package/dist/pages/TestInteractionDetailPage.d.ts.map +1 -1
  148. package/dist/pages/TestInteractionDetailPage.js +4 -4
  149. package/dist/pages/TestInteractionDetailPage.js.map +1 -1
  150. package/dist/pages/TestInteractionsPage.js +3 -3
  151. package/dist/pages/TestInteractionsPage.js.map +1 -1
  152. package/dist/pages/TestRunDetailPage.d.ts.map +1 -1
  153. package/dist/pages/TestRunDetailPage.js +10 -10
  154. package/dist/pages/TestRunDetailPage.js.map +1 -1
  155. package/dist/pages/TestRunsListPage.d.ts.map +1 -1
  156. package/dist/pages/TestRunsListPage.js +2 -2
  157. package/dist/pages/TestRunsListPage.js.map +1 -1
  158. package/dist/pages/TestScenarioDetailPage.d.ts.map +1 -1
  159. package/dist/pages/TestScenarioDetailPage.js +8 -6
  160. package/dist/pages/TestScenarioDetailPage.js.map +1 -1
  161. package/dist/pages/TestScenariosPage.d.ts.map +1 -1
  162. package/dist/pages/TestScenariosPage.js +3 -3
  163. package/dist/pages/TestScenariosPage.js.map +1 -1
  164. package/dist/pages/TestSurfaceDetailPage.d.ts.map +1 -1
  165. package/dist/pages/TestSurfaceDetailPage.js +1 -1
  166. package/dist/pages/TestSurfaceDetailPage.js.map +1 -1
  167. package/dist/pages/TestSurfacesListPage.js +5 -5
  168. package/dist/pages/TestSurfacesListPage.js.map +1 -1
  169. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"DataTable.js","sourceRoot":"","sources":["../../../src/components/data/DataTable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataTable.js","sourceRoot":"","sources":["../../../src/components/data/DataTable.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  export function JsonViewer({ data }) {
3
- return (_jsx("pre", { className: "p-3 rounded-lg bg-gray-50 dark:bg-gray-900 text-xs font-mono overflow-x-auto text-gray-700 dark:text-gray-300", children: JSON.stringify(data, null, 2) }));
3
+ return (_jsx("pre", { className: "p-3 rounded-lg bg-muted text-xs font-mono overflow-x-auto text-foreground", children: JSON.stringify(data, null, 2) }));
4
4
  }
5
5
  //# sourceMappingURL=JsonViewer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JsonViewer.js","sourceRoot":"","sources":["../../../src/components/data/JsonViewer.tsx"],"names":[],"mappings":";AAIA,MAAM,UAAU,UAAU,CAAC,EAAE,IAAI,EAAmB;IAClD,OAAO,CACL,cAAK,SAAS,EAAC,+GAA+G,YAC3H,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAC1B,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"JsonViewer.js","sourceRoot":"","sources":["../../../src/components/data/JsonViewer.tsx"],"names":[],"mappings":";AAIA,MAAM,UAAU,UAAU,CAAC,EAAE,IAAI,EAAmB;IAClD,OAAO,CACL,cAAK,SAAS,EAAC,2EAA2E,YACvF,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAC1B,CACP,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { ChevronLeftIcon } from '@heroicons/react/20/solid';
3
3
  export default function BackLink({ label, onClick }) {
4
- return (_jsxs("button", { onClick: onClick, className: "mb-4 inline-flex items-center gap-1 text-sm font-medium text-gray-600 transition-colors hover:text-blue-600 dark:text-gray-300 dark:hover:text-blue-400", children: [_jsx(ChevronLeftIcon, { className: "h-4 w-4" }), _jsx("span", { children: label })] }));
4
+ return (_jsxs("button", { onClick: onClick, className: "mb-4 inline-flex items-center gap-1 text-sm font-medium text-muted-foreground transition-colors hover:text-primary", children: [_jsx(ChevronLeftIcon, { className: "h-4 w-4" }), _jsx("span", { children: label })] }));
5
5
  }
6
6
  //# sourceMappingURL=BackLink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackLink.js","sourceRoot":"","sources":["../../../src/components/navigation/BackLink.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAO5D,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAiB;IAChE,OAAO,CACL,kBACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,yJAAyJ,aAEnK,KAAC,eAAe,IAAC,SAAS,EAAC,SAAS,GAAG,EACvC,yBAAO,KAAK,GAAQ,IACb,CACV,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"BackLink.js","sourceRoot":"","sources":["../../../src/components/navigation/BackLink.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAO5D,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAiB;IAChE,OAAO,CACL,kBACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,oHAAoH,aAE9H,KAAC,eAAe,IAAC,SAAS,EAAC,SAAS,GAAG,EACvC,yBAAO,KAAK,GAAQ,IACb,CACV,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PagesListView.d.ts","sourceRoot":"","sources":["../../../src/components/pages/PagesListView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAMjE,UAAU,kBAAkB;IAC1B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,kBAAkB,+BA0E9F"}
1
+ {"version":3,"file":"PagesListView.d.ts","sourceRoot":"","sources":["../../../src/components/pages/PagesListView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAMjE,UAAU,kBAAkB;IAC1B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,kBAAkB,+BAwE9F"}
@@ -8,12 +8,12 @@ export function PagesListView({ pages, runId, screenshotsByPageId, apiUrl }) {
8
8
  const r = useEnvRoutes();
9
9
  const sorted = [...pages].sort((a, b) => a.relativePath.localeCompare(b.relativePath));
10
10
  if (sorted.length === 0) {
11
- return (_jsx("div", { className: "py-8 text-center text-gray-500 dark:text-gray-400", children: "No pages discovered." }));
11
+ return _jsx("div", { className: "py-8 text-center text-muted-foreground", children: "No pages discovered." });
12
12
  }
13
13
  return (_jsx(CardGrid, { children: sorted.map(page => {
14
14
  const isExternal = page.relativePath.startsWith('http');
15
15
  const screenshotPath = screenshotsByPageId?.get(page.id);
16
- return (_jsxs("div", { role: "button", tabIndex: 0, onClick: () => navigate(runId ? r.runPage(runId, page.id) : r.page(page.id)), className: "flex flex-col overflow-hidden rounded-lg border border-gray-200 bg-white text-left transition-colors dark:border-gray-700 dark:bg-gray-800 cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-700/40", children: [_jsx("div", { className: "aspect-[16/9] w-full shrink-0 overflow-hidden border-b border-gray-200 bg-gray-100 dark:border-gray-700 dark:bg-gray-900 flex items-center justify-center", children: screenshotPath && apiUrl ? (_jsx("img", { src: buildArtifactUrl(apiUrl, screenshotPath, { thumbnail: true }), alt: "", className: "h-full w-full object-cover object-top", loading: "lazy" })) : (_jsxs("svg", { className: "h-8 w-8 text-gray-300 dark:text-gray-600", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", children: [_jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }), _jsx("path", { d: "M3 15l5-5 4 4 3-3 6 6" })] })) }), _jsxs("div", { className: "min-w-0 flex-1 p-3", children: [_jsx("div", { className: "truncate text-sm font-medium text-gray-900 dark:text-gray-100", children: page.relativePath }), _jsxs("div", { className: "mt-1.5 flex flex-wrap items-center gap-1", children: [page.routeKey && (_jsx("span", { className: "rounded bg-gray-100 px-1.5 py-0.5 text-[11px] text-gray-500 dark:bg-gray-700 dark:text-gray-400", children: page.routeKey })), page.requiresLogin && (_jsx("span", { className: "rounded bg-yellow-100 px-1.5 py-0.5 text-[11px] text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-300", children: "Login" })), isExternal && (_jsx("span", { className: "rounded bg-gray-100 px-1.5 py-0.5 text-[11px] text-gray-500 dark:bg-gray-700 dark:text-gray-400", children: "external" }))] })] })] }, page.id));
16
+ return (_jsxs("div", { role: "button", tabIndex: 0, onClick: () => navigate(runId ? r.runPage(runId, page.id) : r.page(page.id)), className: "flex flex-col overflow-hidden rounded-lg border border-border bg-card text-left transition-colors cursor-pointer hover:bg-accent", children: [_jsx("div", { className: "aspect-[16/9] w-full shrink-0 overflow-hidden border-b border-border bg-muted flex items-center justify-center", children: screenshotPath && apiUrl ? (_jsx("img", { src: buildArtifactUrl(apiUrl, screenshotPath, { thumbnail: true }), alt: "", className: "h-full w-full object-cover object-top", loading: "lazy" })) : (_jsxs("svg", { className: "h-8 w-8 text-muted-foreground", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", children: [_jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }), _jsx("path", { d: "M3 15l5-5 4 4 3-3 6 6" })] })) }), _jsxs("div", { className: "min-w-0 flex-1 p-3", children: [_jsx("div", { className: "truncate text-sm font-medium text-foreground", children: page.relativePath }), _jsxs("div", { className: "mt-1.5 flex flex-wrap items-center gap-1", children: [page.routeKey && (_jsx("span", { className: "rounded bg-muted px-1.5 py-0.5 text-[11px] text-muted-foreground", children: page.routeKey })), page.requiresLogin && (_jsx("span", { className: "rounded bg-warning/10 px-1.5 py-0.5 text-[11px] text-warning", children: "Login" })), isExternal && (_jsx("span", { className: "rounded bg-muted px-1.5 py-0.5 text-[11px] text-muted-foreground", children: "external" }))] })] })] }, page.id));
17
17
  }) }));
18
18
  }
19
19
  //# sourceMappingURL=PagesListView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PagesListView.js","sourceRoot":"","sources":["../../../src/components/pages/PagesListView.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAWrD,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAsB;IAC7F,MAAM,EAAE,QAAQ,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAC5C,MAAM,CAAC,GAAG,YAAY,EAAE,CAAC;IAEzB,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IAEvF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CACL,cAAK,SAAS,EAAC,mDAAmD,qCAA2B,CAC9F,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,QAAQ,cACN,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACjB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACxD,MAAM,cAAc,GAAG,mBAAmB,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEzD,OAAO,CACL,eAEE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAC5E,SAAS,EAAC,sMAAsM,aAEhN,cAAK,SAAS,EAAC,2JAA2J,YACvK,cAAc,IAAI,MAAM,CAAC,CAAC,CAAC,CAC1B,cACE,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAClE,GAAG,EAAC,EAAE,EACN,SAAS,EAAC,uCAAuC,EACjD,OAAO,EAAC,MAAM,GACd,CACH,CAAC,CAAC,CAAC,CACF,eACE,SAAS,EAAC,0CAA0C,EACpD,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,aAEjB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,GAAG,EAClD,eAAM,CAAC,EAAC,uBAAuB,GAAG,IAC9B,CACP,GACG,EACN,eAAK,SAAS,EAAC,oBAAoB,aACjC,cAAK,SAAS,EAAC,+DAA+D,YAC3E,IAAI,CAAC,YAAY,GACd,EACN,eAAK,SAAS,EAAC,0CAA0C,aACtD,IAAI,CAAC,QAAQ,IAAI,CAChB,eAAM,SAAS,EAAC,iGAAiG,YAC9G,IAAI,CAAC,QAAQ,GACT,CACR,EACA,IAAI,CAAC,aAAa,IAAI,CACrB,eAAM,SAAS,EAAC,4GAA4G,sBAErH,CACR,EACA,UAAU,IAAI,CACb,eAAM,SAAS,EAAC,iGAAiG,yBAE1G,CACR,IACG,IACF,KAhDD,IAAI,CAAC,EAAE,CAiDR,CACP,CAAC;QACJ,CAAC,CAAC,GACO,CACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"PagesListView.js","sourceRoot":"","sources":["../../../src/components/pages/PagesListView.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAWrD,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAsB;IAC7F,MAAM,EAAE,QAAQ,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAC5C,MAAM,CAAC,GAAG,YAAY,EAAE,CAAC;IAEzB,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IAEvF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,cAAK,SAAS,EAAC,wCAAwC,qCAA2B,CAAC;IAC5F,CAAC;IAED,OAAO,CACL,KAAC,QAAQ,cACN,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACjB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACxD,MAAM,cAAc,GAAG,mBAAmB,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEzD,OAAO,CACL,eAEE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAC5E,SAAS,EAAC,kIAAkI,aAE5I,cAAK,SAAS,EAAC,gHAAgH,YAC5H,cAAc,IAAI,MAAM,CAAC,CAAC,CAAC,CAC1B,cACE,GAAG,EAAE,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAClE,GAAG,EAAC,EAAE,EACN,SAAS,EAAC,uCAAuC,EACjD,OAAO,EAAC,MAAM,GACd,CACH,CAAC,CAAC,CAAC,CACF,eACE,SAAS,EAAC,+BAA+B,EACzC,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,aAEjB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,GAAG,EAClD,eAAM,CAAC,EAAC,uBAAuB,GAAG,IAC9B,CACP,GACG,EACN,eAAK,SAAS,EAAC,oBAAoB,aACjC,cAAK,SAAS,EAAC,8CAA8C,YAC1D,IAAI,CAAC,YAAY,GACd,EACN,eAAK,SAAS,EAAC,0CAA0C,aACtD,IAAI,CAAC,QAAQ,IAAI,CAChB,eAAM,SAAS,EAAC,kEAAkE,YAC/E,IAAI,CAAC,QAAQ,GACT,CACR,EACA,IAAI,CAAC,aAAa,IAAI,CACrB,eAAM,SAAS,EAAC,8DAA8D,sBAEvE,CACR,EACA,UAAU,IAAI,CACb,eAAM,SAAS,EAAC,kEAAkE,yBAE3E,CACR,IACG,IACF,KAhDD,IAAI,CAAC,EAAE,CAiDR,CACP,CAAC;QACJ,CAAC,CAAC,GACO,CACZ,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PagesMapView.d.ts","sourceRoot":"","sources":["../../../src/components/pages/PagesMapView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAkB1F,OAAO,8BAA8B,CAAC;AA6HtC,UAAU,iBAAiB;IACzB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,gBAAgB,EAAE,uBAAuB,EAAE,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,gBAAgB,EAChB,KAAK,EACL,mBAAmB,EACnB,MAAM,EACN,IAAY,GACb,EAAE,iBAAiB,+BAoOnB"}
1
+ {"version":3,"file":"PagesMapView.d.ts","sourceRoot":"","sources":["../../../src/components/pages/PagesMapView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAkB1F,OAAO,8BAA8B,CAAC;AAuHtC,UAAU,iBAAiB;IACzB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,gBAAgB,EAAE,uBAAuB,EAAE,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,gBAAgB,EAChB,KAAK,EACL,mBAAmB,EACnB,MAAM,EACN,IAAY,GACb,EAAE,iBAAiB,+BA6RnB"}
@@ -16,12 +16,14 @@ const COL_GAP = 250;
16
16
  const MAP_TEST_TYPES = new Set(['navigation', 'interaction']);
17
17
  // --- Custom Nodes ---
18
18
  function PageNode({ data, }) {
19
+ // Decorative map-node category colors (external vs internal): distinct
20
+ // identity palette for graph nodes, no semantic token equivalent.
19
21
  const borderColor = data.isExternal ? '#f97316' : '#374151';
20
- return (_jsxs("div", { className: "rounded-lg bg-white text-xs dark:bg-gray-900 overflow-hidden shadow-sm", style: {
22
+ return (_jsxs("div", { className: "rounded-lg bg-card text-xs overflow-hidden shadow-sm", style: {
21
23
  border: `2px solid ${borderColor}`,
22
24
  width: PAGE_NODE_WIDTH,
23
25
  minHeight: PAGE_NODE_HEIGHT,
24
- }, children: [_jsx(Handle, { type: "target", position: Position.Top, className: "!bg-gray-400" }), _jsx("div", { className: "bg-gray-100 dark:bg-gray-800 flex items-center justify-center", style: { height: 130 }, children: data.screenshotUrl ? (_jsx("img", { src: data.screenshotUrl, alt: data.label, className: "w-full h-full object-cover object-top", loading: "lazy" })) : (_jsxs("svg", { className: "w-8 h-8 text-gray-300 dark:text-gray-600", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", children: [_jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }), _jsx("path", { d: "M3 15l5-5 4 4 3-3 6 6" }), _jsx("circle", { cx: "8.5", cy: "8.5", r: "1.5" })] })) }), _jsxs("div", { className: "px-2 py-1.5 text-center border-t border-gray-100 dark:border-gray-700/50", children: [_jsx("span", { className: "block max-w-[190px] truncate text-gray-900 dark:text-gray-100 font-medium", children: data.label }), data.count > 1 && (_jsxs("span", { className: "text-[10px] text-gray-400 dark:text-gray-500", children: [data.count, " URLs"] }))] }), _jsx(Handle, { type: "source", position: Position.Bottom, className: "!bg-gray-400" })] }));
26
+ }, children: [_jsx(Handle, { type: "target", position: Position.Top, className: "!bg-muted-foreground" }), _jsx("div", { className: "bg-muted flex items-center justify-center", style: { height: 130 }, children: data.screenshotUrl ? (_jsx("img", { src: data.screenshotUrl, alt: data.label, className: "w-full h-full object-cover object-top", loading: "lazy" })) : (_jsxs("svg", { className: "w-8 h-8 text-muted-foreground", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", children: [_jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2" }), _jsx("path", { d: "M3 15l5-5 4 4 3-3 6 6" }), _jsx("circle", { cx: "8.5", cy: "8.5", r: "1.5" })] })) }), _jsxs("div", { className: "px-2 py-1.5 text-center border-t border-border", children: [_jsx("span", { className: "block max-w-[190px] truncate text-foreground font-medium", children: data.label }), data.count > 1 && (_jsxs("span", { className: "text-[10px] text-muted-foreground", children: [data.count, " URLs"] }))] }), _jsx(Handle, { type: "source", position: Position.Bottom, className: "!bg-muted-foreground" })] }));
25
27
  }
26
28
  const nodeTypes = {
27
29
  pageNode: PageNode,
@@ -53,11 +55,6 @@ function getConsolidationKey(page) {
53
55
  return patternizePath(normalized);
54
56
  return raw;
55
57
  }
56
- function getPathDepth(path) {
57
- if (path === '/')
58
- return 0;
59
- return path.split('/').filter(Boolean).length;
60
- }
61
58
  export function PagesMapView({ pages, testInteractions, runId, screenshotsByPageId, apiUrl, fill = false, }) {
62
59
  const { navigate } = useLocalizedNavigate();
63
60
  const r = useEnvRoutes();
@@ -82,7 +79,6 @@ export function PagesMapView({ pages, testInteractions, runId, screenshotsByPage
82
79
  const nodeEntries = Array.from(consolidated.entries()).map(([path, data]) => ({
83
80
  path,
84
81
  ...data,
85
- depth: getPathDepth(path),
86
82
  }));
87
83
  // --- 2. Map original page IDs → consolidated path ---
88
84
  const pageIdToPath = new Map();
@@ -91,88 +87,140 @@ export function PagesMapView({ pages, testInteractions, runId, screenshotsByPage
91
87
  pageIdToPath.set(pid, entry.path);
92
88
  }
93
89
  }
94
- // --- 3. Position nodes by depth (rows) ---
95
- const depthGroups = new Map();
90
+ // --- 3. Build parent → child hierarchy from URL paths ---
91
+ // Each non-root node attaches to its nearest *existing* ancestor path, so a
92
+ // deep page whose intermediate segments were never discovered still hangs
93
+ // off the closest known page rather than floating.
94
+ const pathSet = new Set(nodeEntries.map(n => n.path));
95
+ const parentOf = new Map();
96
+ const childrenOf = new Map();
96
97
  for (const entry of nodeEntries) {
97
- const arr = depthGroups.get(entry.depth) || [];
98
- arr.push(entry);
99
- depthGroups.set(entry.depth, arr);
98
+ let parent = null;
99
+ if (entry.path !== '/' && !entry.isExternal) {
100
+ const segments = entry.path.split('/').filter(Boolean);
101
+ for (let i = segments.length - 1; i >= 0; i--) {
102
+ const candidate = i === 0 ? '/' : '/' + segments.slice(0, i).join('/');
103
+ if (pathSet.has(candidate)) {
104
+ parent = candidate;
105
+ break;
106
+ }
107
+ }
108
+ }
109
+ parentOf.set(entry.path, parent);
110
+ if (parent) {
111
+ const siblings = childrenOf.get(parent) ?? [];
112
+ siblings.push(entry.path);
113
+ childrenOf.set(parent, siblings);
114
+ }
115
+ }
116
+ for (const siblings of childrenOf.values()) {
117
+ siblings.sort((a, b) => a.localeCompare(b));
118
+ }
119
+ // Roots: the home page, external links, and any orphan whose ancestors
120
+ // weren't discovered. '/' is forced first so it owns the top-left corner.
121
+ const roots = nodeEntries
122
+ .filter(e => parentOf.get(e.path) == null)
123
+ .map(e => e.path)
124
+ .sort((a, b) => (a === '/' ? -1 : b === '/' ? 1 : a.localeCompare(b)));
125
+ // --- 4. Position nodes as a left-aligned tree ---
126
+ // Leaves are packed left→right; every parent sits directly above its FIRST
127
+ // child (the top-left of its subtree) instead of being centered over it.
128
+ // This keeps the root page pinned to (0,0), so the default top-left
129
+ // viewport always shows it, and reads as a true hierarchy. y is the tree
130
+ // depth (parent depth + 1), not the raw URL depth, so branches stay
131
+ // vertically compact.
132
+ const xByPath = new Map();
133
+ const depthByPath = new Map();
134
+ let leafCursor = 0;
135
+ const placeSubtree = (path, depth) => {
136
+ depthByPath.set(path, depth);
137
+ const kids = childrenOf.get(path) ?? [];
138
+ if (kids.length === 0) {
139
+ const x = leafCursor * COL_GAP;
140
+ leafCursor++;
141
+ xByPath.set(path, x);
142
+ return x;
143
+ }
144
+ let firstChildX = null;
145
+ for (const child of kids) {
146
+ const childX = placeSubtree(child, depth + 1);
147
+ if (firstChildX === null)
148
+ firstChildX = childX;
149
+ }
150
+ const x = firstChildX ?? leafCursor * COL_GAP;
151
+ xByPath.set(path, x);
152
+ return x;
153
+ };
154
+ for (const root of roots) {
155
+ placeSubtree(root, 0);
100
156
  }
101
- const sortedDepths = Array.from(depthGroups.keys()).sort((a, b) => a - b);
102
157
  const rfNodes = [];
103
- for (let rowIdx = 0; rowIdx < sortedDepths.length; rowIdx++) {
104
- const group = depthGroups.get(sortedDepths[rowIdx]);
105
- group.sort((a, b) => a.path.localeCompare(b.path));
106
- const totalWidth = group.length * COL_GAP;
107
- const startX = -totalWidth / 2 + COL_GAP / 2;
108
- for (let i = 0; i < group.length; i++) {
109
- const entry = group[i];
110
- // Find screenshot for first page ID in this group
111
- let screenshotUrl = null;
112
- if (screenshotsByPageId && apiUrl) {
113
- for (const pid of entry.pageIds) {
114
- const path = screenshotsByPageId.get(pid);
115
- if (path) {
116
- screenshotUrl = buildArtifactUrl(apiUrl, path, { thumbnail: true });
117
- break;
118
- }
158
+ for (const entry of nodeEntries) {
159
+ // Find screenshot for the first page ID that has one.
160
+ let screenshotUrl = null;
161
+ if (screenshotsByPageId && apiUrl) {
162
+ for (const pid of entry.pageIds) {
163
+ const shotPath = screenshotsByPageId.get(pid);
164
+ if (shotPath) {
165
+ screenshotUrl = buildArtifactUrl(apiUrl, shotPath, { thumbnail: true });
166
+ break;
119
167
  }
120
168
  }
121
- rfNodes.push({
122
- id: entry.path,
123
- type: 'pageNode',
124
- data: {
125
- label: entry.path,
126
- isExternal: entry.isExternal,
127
- count: entry.pageIds.length,
128
- pageIds: entry.pageIds,
129
- screenshotUrl,
130
- },
131
- position: {
132
- x: startX + i * COL_GAP,
133
- y: rowIdx * ROW_GAP,
134
- },
135
- });
136
169
  }
170
+ rfNodes.push({
171
+ id: entry.path,
172
+ type: 'pageNode',
173
+ data: {
174
+ label: entry.path,
175
+ isExternal: entry.isExternal,
176
+ count: entry.pageIds.length,
177
+ pageIds: entry.pageIds,
178
+ screenshotUrl,
179
+ },
180
+ position: {
181
+ x: xByPath.get(entry.path) ?? 0,
182
+ y: (depthByPath.get(entry.path) ?? 0) * ROW_GAP,
183
+ },
184
+ });
137
185
  }
138
- // --- 4. URL hierarchy edges (parent → child) ---
139
- const pathSet = new Set(nodeEntries.map(n => n.path));
186
+ // --- 5. URL hierarchy edges (parent → child) ---
140
187
  const rfEdges = [];
141
188
  const edgeKeySet = new Set();
142
189
  for (const entry of nodeEntries) {
143
- if (entry.path === '/' || entry.isExternal)
190
+ const parent = parentOf.get(entry.path);
191
+ if (!parent)
144
192
  continue;
145
- const segments = entry.path.split('/').filter(Boolean);
146
- for (let i = segments.length - 1; i >= 0; i--) {
147
- const parentPath = i === 0 ? '/' : '/' + segments.slice(0, i).join('/');
148
- if (pathSet.has(parentPath)) {
149
- const key = `${parentPath}\0${entry.path}`;
150
- edgeKeySet.add(key);
151
- rfEdges.push({
152
- id: `h-${rfEdges.length}`,
153
- source: parentPath,
154
- target: entry.path,
155
- type: 'curved',
156
- style: { stroke: '#94a3b8' },
157
- markerEnd: {
158
- type: MarkerType.ArrowClosed,
159
- color: '#94a3b8',
160
- },
161
- });
162
- break;
163
- }
164
- }
193
+ const key = `${parent}\0${entry.path}`;
194
+ edgeKeySet.add(key);
195
+ rfEdges.push({
196
+ id: `h-${rfEdges.length}`,
197
+ source: parent,
198
+ target: entry.path,
199
+ type: 'curved',
200
+ // Decorative graph-edge colors (hierarchy vs interaction): distinct
201
+ // identity palette for the map, no semantic token equivalent.
202
+ style: { stroke: '#94a3b8' },
203
+ markerEnd: {
204
+ type: MarkerType.ArrowClosed,
205
+ color: '#94a3b8',
206
+ },
207
+ });
165
208
  }
166
- // --- 5. Test interaction edges (cross-page) ---
209
+ // --- 6. Test interaction edges (cross-page) ---
210
+ // Only interactions that declare a distinct target page represent a
211
+ // cross-page connection. Direct-navigation tests ("Navigate to /x") carry
212
+ // no page IDs (pageId/targetPageId are null), so they are NOT connections
213
+ // and must not be reported as omitted. Mirrors the filter in
214
+ // testomniac_lib's usePageMapData.
167
215
  let hiddenInteractionCount = 0;
168
216
  const interactionCounts = new Map();
169
217
  for (const ti of testInteractions) {
170
218
  if (!MAP_TEST_TYPES.has(ti.testType))
171
219
  continue;
172
- const sourcePath = ti.pageId != null ? (pageIdToPath.get(ti.pageId) ?? null) : null;
173
- const targetPath = ti.targetPageId != null ? (pageIdToPath.get(ti.targetPageId) ?? null) : null;
174
- const src = ti.testType === 'navigation' ? null : sourcePath;
175
- const tgt = targetPath ?? (ti.testType === 'navigation' ? sourcePath : null);
220
+ if (ti.targetPageId == null || ti.pageId === ti.targetPageId)
221
+ continue;
222
+ const src = ti.pageId != null ? (pageIdToPath.get(ti.pageId) ?? null) : null;
223
+ const tgt = pageIdToPath.get(ti.targetPageId) ?? null;
176
224
  if (src && tgt && src !== tgt) {
177
225
  const key = `${src}\0${tgt}`;
178
226
  const existing = interactionCounts.get(key);
@@ -183,9 +231,13 @@ export function PagesMapView({ pages, testInteractions, runId, screenshotsByPage
183
231
  interactionCounts.set(key, { source: src, target: tgt, count: 1 });
184
232
  }
185
233
  }
186
- else {
234
+ else if (!(src && tgt)) {
235
+ // A declared cross-page target whose source or target page isn't part
236
+ // of this view — a genuine omission worth surfacing.
187
237
  hiddenInteractionCount++;
188
238
  }
239
+ // src === tgt: both endpoints consolidated to the same node (e.g.
240
+ // parameterised URLs merged) — a self-loop, not a missing connection.
189
241
  }
190
242
  for (const [key, edge] of interactionCounts) {
191
243
  if (!edgeKeySet.has(key)) {
@@ -196,6 +248,7 @@ export function PagesMapView({ pages, testInteractions, runId, screenshotsByPage
196
248
  target: edge.target,
197
249
  type: 'smoothstep',
198
250
  animated: true,
251
+ // Decorative cross-page interaction edge color (see hierarchy edge above).
199
252
  style: { stroke: '#60a5fa' },
200
253
  label: edge.count > 1 ? String(edge.count) : undefined,
201
254
  markerEnd: {
@@ -224,8 +277,8 @@ export function PagesMapView({ pages, testInteractions, runId, screenshotsByPage
224
277
  }
225
278
  }, [navigate, r, runId]);
226
279
  if (pages.length === 0) {
227
- return (_jsx("div", { className: "flex h-[500px] items-center justify-center rounded-lg border border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-800", children: _jsx("p", { className: "text-gray-500 dark:text-gray-400", children: "No page connections to display. Run a scan to discover navigation flows." }) }));
280
+ return (_jsx("div", { className: "flex h-[500px] items-center justify-center rounded-lg border border-border bg-muted", children: _jsx("p", { className: "text-muted-foreground", children: "No page connections to display. Run a scan to discover navigation flows." }) }));
228
281
  }
229
- return (_jsxs("div", { className: fill ? 'flex h-full flex-col gap-2' : 'space-y-2', children: [hiddenInteractionCount > 0 && (_jsxs("p", { className: "flex-shrink-0 text-xs text-gray-500 dark:text-gray-400", children: [hiddenInteractionCount, " interaction", hiddenInteractionCount === 1 ? '' : 's', " omitted (no cross-page connection)."] })), _jsx("div", { className: `w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-700 ${fill ? 'min-h-0 flex-1' : 'h-[600px]'}`, children: _jsxs(ReactFlow, { nodes: nodes, edges: edges, nodeTypes: nodeTypes, edgeTypes: edgeTypes, onNodesChange: onNodesChange, onEdgesChange: onEdgesChange, onNodeDoubleClick: handleNodeDoubleClick, fitView: true, className: "bg-gray-50 dark:bg-gray-900", children: [_jsx(Background, {}), _jsx(Controls, {}), _jsx(MiniMap, {})] }) })] }));
282
+ return (_jsxs("div", { className: fill ? 'flex h-full min-h-[400px] flex-col gap-2' : 'space-y-2', children: [hiddenInteractionCount > 0 && (_jsxs("p", { className: "flex-shrink-0 text-xs text-muted-foreground", children: [hiddenInteractionCount, " interaction", hiddenInteractionCount === 1 ? '' : 's', " omitted (no cross-page connection)."] })), _jsx("div", { className: `w-full overflow-hidden rounded-lg border border-border ${fill ? 'min-h-0 flex-1' : 'h-[600px]'}`, children: _jsxs(ReactFlow, { nodes: nodes, edges: edges, nodeTypes: nodeTypes, edgeTypes: edgeTypes, onNodesChange: onNodesChange, onEdgesChange: onEdgesChange, onNodeDoubleClick: handleNodeDoubleClick, defaultViewport: { x: 40, y: 40, zoom: 0.7 }, minZoom: 0.1, className: "bg-muted", children: [_jsx(Background, {}), _jsx(Controls, {}), _jsx(MiniMap, {})] }) })] }));
230
283
  }
231
284
  //# sourceMappingURL=PagesMapView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PagesMapView.js","sourceRoot":"","sources":["../../../src/components/pages/PagesMapView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PagesMapView.js","sourceRoot":"","sources":["../../../src/components/pages/PagesMapView.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Per-environment scan overrides plus the merged "effective" settings the API
3
+ * will apply. Scoped to the current environment (productId + envId derived from
4
+ * the route via the dashboard environment context).
5
+ */
6
+ export declare function EnvironmentScanSettingsSection(): import("react").JSX.Element | null;
7
+ //# sourceMappingURL=EnvironmentScanSettingsSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentScanSettingsSection.d.ts","sourceRoot":"","sources":["../../../src/components/scan-settings/EnvironmentScanSettingsSection.tsx"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,wBAAgB,8BAA8B,uCAyF7C"}
@@ -0,0 +1,52 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { Alert, Card } from '@sudobility/components';
4
+ import { useEffectiveEnvironmentScanSettings, useEnvironmentScanSettings, useUpdateEnvironmentScanSettings, } from '@sudobility/testomniac_client';
5
+ import { useTestomniacApi } from '../../context/config';
6
+ import { useDashboardEnvironmentContext } from '../../hooks/useDashboardEnvironmentContext';
7
+ import { ScanSettingsPanel } from './ScanSettingsPanel';
8
+ /**
9
+ * Per-environment scan overrides plus the merged "effective" settings the API
10
+ * will apply. Scoped to the current environment (productId + envId derived from
11
+ * the route via the dashboard environment context).
12
+ */
13
+ export function EnvironmentScanSettingsSection() {
14
+ const { networkClient, token, baseUrl } = useTestomniacApi();
15
+ const { productId, envId: environmentId } = useDashboardEnvironmentContext();
16
+ const [expertisesOverride, setExpertisesOverride] = useState(null);
17
+ const [error, setError] = useState(null);
18
+ const scanSettingsQuery = useEnvironmentScanSettings(networkClient, baseUrl, token ?? '', productId ?? 0, environmentId, { enabled: !!token && !!productId && !!environmentId });
19
+ const effectiveScanSettingsQuery = useEffectiveEnvironmentScanSettings(networkClient, baseUrl, token ?? '', productId ?? 0, environmentId, { enabled: !!token && !!productId && !!environmentId });
20
+ const updateMutation = useUpdateEnvironmentScanSettings(networkClient, baseUrl);
21
+ const expertises = expertisesOverride ?? scanSettingsQuery.data?.data?.expertiseSlugs ?? [];
22
+ const toggle = (slug, checked) => {
23
+ setExpertisesOverride(prev => {
24
+ const source = prev ?? [];
25
+ return checked ? [...source, slug] : source.filter(item => item !== slug);
26
+ });
27
+ };
28
+ async function save() {
29
+ if (!productId || !environmentId)
30
+ return;
31
+ setError(null);
32
+ try {
33
+ await updateMutation.mutateAsync({
34
+ token: token ?? '',
35
+ productId,
36
+ environmentId,
37
+ data: {
38
+ expertiseSlugs: expertises,
39
+ ruleOverrides: scanSettingsQuery.data?.data?.ruleOverrides ?? null,
40
+ },
41
+ });
42
+ setExpertisesOverride(null);
43
+ }
44
+ catch (err) {
45
+ setError(err instanceof Error ? err.message : 'Failed to save environment scan settings');
46
+ }
47
+ }
48
+ if (!productId || !environmentId)
49
+ return null;
50
+ return (_jsxs("div", { className: "space-y-4", children: [error && _jsx(Alert, { variant: "error", description: error }), _jsx(ScanSettingsPanel, { title: "Environment Overrides", description: "These overrides apply before a scan starts in this environment.", selectedExpertises: expertises, onToggle: toggle, onSave: save, isSaving: updateMutation.isPending, overrideCount: scanSettingsQuery.data?.data?.ruleOverrides?.length ?? 0 }), _jsxs(Card, { variant: "bordered", children: [_jsx("h2", { className: "text-sm font-semibold text-foreground", children: "Effective Scan Settings" }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "This is the merged configuration the API will apply before request-level overrides." }), _jsxs("div", { className: "mt-3 flex flex-wrap gap-2", children: [(effectiveScanSettingsQuery.data?.data?.expertiseSlugs ?? []).map((expertise) => (_jsx("span", { className: "rounded bg-muted px-2 py-1 text-xs capitalize text-muted-foreground", children: expertise }, expertise))), (effectiveScanSettingsQuery.data?.data?.expertiseSlugs ?? []).length === 0 && (_jsx("span", { className: "text-xs text-muted-foreground", children: "No expertise settings configured." }))] })] })] }));
51
+ }
52
+ //# sourceMappingURL=EnvironmentScanSettingsSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentScanSettingsSection.js","sourceRoot":"","sources":["../../../src/components/scan-settings/EnvironmentScanSettingsSection.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Product-wide scan defaults. These apply to every environment unless an
3
+ * environment override replaces them. Scoped purely by `productId`, so it has
4
+ * no dependency on the current environment.
5
+ */
6
+ export declare function ProductScanDefaultsSection({ productId }: {
7
+ productId: number;
8
+ }): import("react").JSX.Element;
9
+ //# sourceMappingURL=ProductScanDefaultsSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductScanDefaultsSection.d.ts","sourceRoot":"","sources":["../../../src/components/scan-settings/ProductScanDefaultsSection.tsx"],"names":[],"mappings":"AASA;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,+BAmD9E"}
@@ -0,0 +1,48 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { Alert } from '@sudobility/components';
4
+ import { useProductScanSettings, useUpdateProductScanSettings, } from '@sudobility/testomniac_client';
5
+ import { useTestomniacApi } from '../../context/config';
6
+ import { ScanSettingsPanel } from './ScanSettingsPanel';
7
+ /**
8
+ * Product-wide scan defaults. These apply to every environment unless an
9
+ * environment override replaces them. Scoped purely by `productId`, so it has
10
+ * no dependency on the current environment.
11
+ */
12
+ export function ProductScanDefaultsSection({ productId }) {
13
+ const { networkClient, token, baseUrl } = useTestomniacApi();
14
+ const [expertisesOverride, setExpertisesOverride] = useState(null);
15
+ const [error, setError] = useState(null);
16
+ const scanSettingsQuery = useProductScanSettings(networkClient, baseUrl, token ?? '', productId, {
17
+ enabled: !!token && !!productId,
18
+ });
19
+ const updateMutation = useUpdateProductScanSettings(networkClient, baseUrl);
20
+ const expertises = expertisesOverride ?? scanSettingsQuery.data?.data?.expertiseSlugs ?? [];
21
+ const toggle = (slug, checked) => {
22
+ setExpertisesOverride(prev => {
23
+ const source = prev ?? [];
24
+ return checked ? [...source, slug] : source.filter(item => item !== slug);
25
+ });
26
+ };
27
+ async function save() {
28
+ if (!productId)
29
+ return;
30
+ setError(null);
31
+ try {
32
+ await updateMutation.mutateAsync({
33
+ token: token ?? '',
34
+ productId,
35
+ data: {
36
+ expertiseSlugs: expertises,
37
+ ruleOverrides: scanSettingsQuery.data?.data?.ruleOverrides ?? null,
38
+ },
39
+ });
40
+ setExpertisesOverride(null);
41
+ }
42
+ catch (err) {
43
+ setError(err instanceof Error ? err.message : 'Failed to save product scan settings');
44
+ }
45
+ }
46
+ return (_jsxs("div", { className: "space-y-4", children: [error && _jsx(Alert, { variant: "error", description: error }), _jsx(ScanSettingsPanel, { title: "Product Scan Defaults", description: "These defaults apply to every environment unless an environment override replaces them.", selectedExpertises: expertises, onToggle: toggle, onSave: save, isSaving: updateMutation.isPending, overrideCount: scanSettingsQuery.data?.data?.ruleOverrides?.length ?? 0 })] }));
47
+ }
48
+ //# sourceMappingURL=ProductScanDefaultsSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductScanDefaultsSection.js","sourceRoot":"","sources":["../../../src/components/scan-settings/ProductScanDefaultsSection.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,EAAE,SAAS,EAAyB;IAC7E,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAC7D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAkB,IAAI,CAAC,CAAC;IACpF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAExD,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,EAAE,SAAS,EAAE;QAC/F,OAAO,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,SAAS;KAChC,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,4BAA4B,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAE5E,MAAM,UAAU,GAAG,kBAAkB,IAAI,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,IAAI,EAAE,CAAC;IAE5F,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,OAAgB,EAAE,EAAE;QAChD,qBAAqB,CAAC,IAAI,CAAC,EAAE;YAC3B,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YAC1B,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,KAAK,UAAU,IAAI;QACjB,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,cAAc,CAAC,WAAW,CAAC;gBAC/B,KAAK,EAAE,KAAK,IAAI,EAAE;gBAClB,SAAS;gBACT,IAAI,EAAE;oBACJ,cAAc,EAAE,UAAU;oBAC1B,aAAa,EAAE,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,IAAI,IAAI;iBACnE;aACF,CAAC,CAAC;YACH,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAC,WAAW,aACvB,KAAK,IAAI,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAE,KAAK,GAAI,EACvD,KAAC,iBAAiB,IAChB,KAAK,EAAC,uBAAuB,EAC7B,WAAW,EAAC,yFAAyF,EACrG,kBAAkB,EAAE,UAAU,EAC9B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,IAAI,EACZ,QAAQ,EAAE,cAAc,CAAC,SAAS,EAClC,aAAa,EAAE,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC,GACvE,IACE,CACP,CAAC;AACJ,CAAC"}