@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.
- package/dist/components/apiKeys/EntityApiKeysPanel.js +2 -2
- package/dist/components/apiKeys/EntityApiKeysPanel.js.map +1 -1
- package/dist/components/bundles/AddToBundleButton.d.ts.map +1 -1
- package/dist/components/bundles/AddToBundleButton.js +1 -1
- package/dist/components/bundles/AddToBundleButton.js.map +1 -1
- package/dist/components/cells/ListCell.d.ts.map +1 -1
- package/dist/components/cells/ListCell.js +3 -3
- package/dist/components/cells/ListCell.js.map +1 -1
- package/dist/components/credentials/CredentialManagementSection.d.ts.map +1 -1
- package/dist/components/credentials/CredentialManagementSection.js +2 -2
- package/dist/components/credentials/CredentialManagementSection.js.map +1 -1
- package/dist/components/dashboard/DashboardSidebar.d.ts.map +1 -1
- package/dist/components/dashboard/DashboardSidebar.js +64 -25
- package/dist/components/dashboard/DashboardSidebar.js.map +1 -1
- package/dist/components/data/DataTable.d.ts.map +1 -1
- package/dist/components/data/DataTable.js +9 -9
- package/dist/components/data/DataTable.js.map +1 -1
- package/dist/components/data/JsonViewer.js +1 -1
- package/dist/components/data/JsonViewer.js.map +1 -1
- package/dist/components/navigation/BackLink.js +1 -1
- package/dist/components/navigation/BackLink.js.map +1 -1
- package/dist/components/pages/PagesListView.d.ts.map +1 -1
- package/dist/components/pages/PagesListView.js +2 -2
- package/dist/components/pages/PagesListView.js.map +1 -1
- package/dist/components/pages/PagesMapView.d.ts.map +1 -1
- package/dist/components/pages/PagesMapView.js +129 -76
- package/dist/components/pages/PagesMapView.js.map +1 -1
- package/dist/components/scan-settings/EnvironmentScanSettingsSection.d.ts +7 -0
- package/dist/components/scan-settings/EnvironmentScanSettingsSection.d.ts.map +1 -0
- package/dist/components/scan-settings/EnvironmentScanSettingsSection.js +52 -0
- package/dist/components/scan-settings/EnvironmentScanSettingsSection.js.map +1 -0
- package/dist/components/scan-settings/ProductScanDefaultsSection.d.ts +9 -0
- package/dist/components/scan-settings/ProductScanDefaultsSection.d.ts.map +1 -0
- package/dist/components/scan-settings/ProductScanDefaultsSection.js +48 -0
- package/dist/components/scan-settings/ProductScanDefaultsSection.js.map +1 -0
- package/dist/components/scan-settings/ScanSettingsPanel.d.ts +15 -0
- package/dist/components/scan-settings/ScanSettingsPanel.d.ts.map +1 -0
- package/dist/components/scan-settings/ScanSettingsPanel.js +12 -0
- package/dist/components/scan-settings/ScanSettingsPanel.js.map +1 -0
- package/dist/components/scan-settings/index.d.ts +4 -0
- package/dist/components/scan-settings/index.d.ts.map +1 -0
- package/dist/components/scan-settings/index.js +4 -0
- package/dist/components/scan-settings/index.js.map +1 -0
- package/dist/components/scanner/EventLog.d.ts.map +1 -1
- package/dist/components/scanner/EventLog.js +4 -4
- package/dist/components/scanner/EventLog.js.map +1 -1
- package/dist/components/scanner/LiveCounters.d.ts.map +1 -1
- package/dist/components/scanner/LiveCounters.js +3 -1
- package/dist/components/scanner/LiveCounters.js.map +1 -1
- package/dist/components/scanner/PhaseIndicator.d.ts.map +1 -1
- package/dist/components/scanner/PhaseIndicator.js +7 -7
- package/dist/components/scanner/PhaseIndicator.js.map +1 -1
- package/dist/components/scanner/RunSummaryCard.js +1 -1
- package/dist/components/scanner/RunSummaryCard.js.map +1 -1
- package/dist/components/scanner/ScanForm.js +1 -1
- package/dist/components/scanner/ScanForm.js.map +1 -1
- package/dist/components/scanner/ScanProgressPanel.d.ts.map +1 -1
- package/dist/components/scanner/ScanProgressPanel.js +1 -1
- package/dist/components/scanner/ScanProgressPanel.js.map +1 -1
- package/dist/components/scanner/StatusBadge.js +1 -1
- package/dist/components/scanner/StatusBadge.js.map +1 -1
- package/dist/components/scenarios/AddScenarioForm.js +1 -1
- package/dist/components/scenarios/AddScenarioForm.js.map +1 -1
- package/dist/components/scripts/ScriptPanel.js +1 -1
- package/dist/components/scripts/ScriptPanel.js.map +1 -1
- package/dist/config/priorityConfig.js +10 -10
- package/dist/config/priorityConfig.js.map +1 -1
- package/dist/context/routing.d.ts +2 -0
- package/dist/context/routing.d.ts.map +1 -1
- package/dist/context/routing.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/pages/BundleDetailPage.d.ts.map +1 -1
- package/dist/pages/BundleDetailPage.js +7 -7
- package/dist/pages/BundleDetailPage.js.map +1 -1
- package/dist/pages/BundlesPage.d.ts.map +1 -1
- package/dist/pages/BundlesPage.js +6 -72
- package/dist/pages/BundlesPage.js.map +1 -1
- package/dist/pages/CreateProductPage.d.ts.map +1 -1
- package/dist/pages/CreateProductPage.js +25 -9
- package/dist/pages/CreateProductPage.js.map +1 -1
- package/dist/pages/DashboardOverview.d.ts.map +1 -1
- package/dist/pages/DashboardOverview.js +33 -32
- package/dist/pages/DashboardOverview.js.map +1 -1
- package/dist/pages/FindingsListPage.d.ts.map +1 -1
- package/dist/pages/FindingsListPage.js +7 -9
- package/dist/pages/FindingsListPage.js.map +1 -1
- package/dist/pages/PageDetailPage.d.ts.map +1 -1
- package/dist/pages/PageDetailPage.js +8 -8
- package/dist/pages/PageDetailPage.js.map +1 -1
- package/dist/pages/PageGraphPage.d.ts.map +1 -1
- package/dist/pages/PageGraphPage.js +3 -3
- package/dist/pages/PageGraphPage.js.map +1 -1
- package/dist/pages/PageStateDetailPage.d.ts.map +1 -1
- package/dist/pages/PageStateDetailPage.js +11 -11
- package/dist/pages/PageStateDetailPage.js.map +1 -1
- package/dist/pages/PagesPage.js +7 -7
- package/dist/pages/PagesPage.js.map +1 -1
- package/dist/pages/PatternsPage.d.ts.map +1 -1
- package/dist/pages/PatternsPage.js +4 -4
- package/dist/pages/PatternsPage.js.map +1 -1
- package/dist/pages/PersonasPage.d.ts.map +1 -1
- package/dist/pages/PersonasPage.js +4 -4
- package/dist/pages/PersonasPage.js.map +1 -1
- package/dist/pages/ProductSettingsPage.d.ts +7 -0
- package/dist/pages/ProductSettingsPage.d.ts.map +1 -0
- package/dist/pages/ProductSettingsPage.js +16 -0
- package/dist/pages/ProductSettingsPage.js.map +1 -0
- package/dist/pages/RunRedirect.js +2 -2
- package/dist/pages/RunRedirect.js.map +1 -1
- package/dist/pages/RunSurfaceRunDetailPage.d.ts.map +1 -1
- package/dist/pages/RunSurfaceRunDetailPage.js +4 -4
- package/dist/pages/RunSurfaceRunDetailPage.js.map +1 -1
- package/dist/pages/RunSurfaceRunsPage.js +1 -1
- package/dist/pages/RunSurfaceRunsPage.js.map +1 -1
- package/dist/pages/RunTestInteractionRunDetailPage.d.ts.map +1 -1
- package/dist/pages/RunTestInteractionRunDetailPage.js +3 -3
- package/dist/pages/RunTestInteractionRunDetailPage.js.map +1 -1
- package/dist/pages/RunTestInteractionRunsPage.d.ts.map +1 -1
- package/dist/pages/RunTestInteractionRunsPage.js +2 -2
- package/dist/pages/RunTestInteractionRunsPage.js.map +1 -1
- package/dist/pages/RunnerGraphPage.js +5 -5
- package/dist/pages/RunnerGraphPage.js.map +1 -1
- package/dist/pages/RunnerSettingsPage.d.ts.map +1 -1
- package/dist/pages/RunnerSettingsPage.js +2 -1
- package/dist/pages/RunnerSettingsPage.js.map +1 -1
- package/dist/pages/ScaffoldDetailPage.d.ts.map +1 -1
- package/dist/pages/ScaffoldDetailPage.js +7 -7
- package/dist/pages/ScaffoldDetailPage.js.map +1 -1
- package/dist/pages/ScaffoldsPage.d.ts.map +1 -1
- package/dist/pages/ScaffoldsPage.js +3 -3
- package/dist/pages/ScaffoldsPage.js.map +1 -1
- package/dist/pages/ScanProgressPage.d.ts.map +1 -1
- package/dist/pages/ScanProgressPage.js +1 -1
- package/dist/pages/ScanProgressPage.js.map +1 -1
- package/dist/pages/SchedulesPage.d.ts.map +1 -1
- package/dist/pages/SchedulesPage.js +4 -4
- package/dist/pages/SchedulesPage.js.map +1 -1
- package/dist/pages/StartScanPage.d.ts.map +1 -1
- package/dist/pages/StartScanPage.js +7 -7
- package/dist/pages/StartScanPage.js.map +1 -1
- package/dist/pages/StatusPage.d.ts.map +1 -1
- package/dist/pages/StatusPage.js +25 -26
- package/dist/pages/StatusPage.js.map +1 -1
- package/dist/pages/TestInteractionDetailPage.d.ts.map +1 -1
- package/dist/pages/TestInteractionDetailPage.js +4 -4
- package/dist/pages/TestInteractionDetailPage.js.map +1 -1
- package/dist/pages/TestInteractionsPage.js +3 -3
- package/dist/pages/TestInteractionsPage.js.map +1 -1
- package/dist/pages/TestRunDetailPage.d.ts.map +1 -1
- package/dist/pages/TestRunDetailPage.js +10 -10
- package/dist/pages/TestRunDetailPage.js.map +1 -1
- package/dist/pages/TestRunsListPage.d.ts.map +1 -1
- package/dist/pages/TestRunsListPage.js +2 -2
- package/dist/pages/TestRunsListPage.js.map +1 -1
- package/dist/pages/TestScenarioDetailPage.d.ts.map +1 -1
- package/dist/pages/TestScenarioDetailPage.js +8 -6
- package/dist/pages/TestScenarioDetailPage.js.map +1 -1
- package/dist/pages/TestScenariosPage.d.ts.map +1 -1
- package/dist/pages/TestScenariosPage.js +3 -3
- package/dist/pages/TestScenariosPage.js.map +1 -1
- package/dist/pages/TestSurfaceDetailPage.d.ts.map +1 -1
- package/dist/pages/TestSurfaceDetailPage.js +1 -1
- package/dist/pages/TestSurfaceDetailPage.js.map +1 -1
- package/dist/pages/TestSurfacesListPage.js +5 -5
- package/dist/pages/TestSurfacesListPage.js.map +1 -1
- package/package.json +7 -7
|
@@ -132,26 +132,26 @@ export function BundleDetailPage() {
|
|
|
132
132
|
}
|
|
133
133
|
};
|
|
134
134
|
if (contextLoading || bundlesLoading) {
|
|
135
|
-
return (_jsx("div", { className: "p-6", children: _jsx("div", { className: "text-center text-
|
|
135
|
+
return (_jsx("div", { className: "p-6", children: _jsx("div", { className: "text-center text-muted-foreground py-8", children: "Loading..." }) }));
|
|
136
136
|
}
|
|
137
137
|
if (contextError) {
|
|
138
|
-
return (_jsx("div", { className: "p-6", children: _jsxs("div", { className: "text-center text-
|
|
138
|
+
return (_jsx("div", { className: "p-6", children: _jsxs("div", { className: "text-center text-destructive py-8", children: ["Error: ", contextError] }) }));
|
|
139
139
|
}
|
|
140
140
|
if (!bundle) {
|
|
141
|
-
return (_jsx("div", { className: "p-6", children: _jsx("div", { className: "text-center text-
|
|
141
|
+
return (_jsx("div", { className: "p-6", children: _jsx("div", { className: "text-center text-muted-foreground py-8", children: "Bundle not found" }) }));
|
|
142
142
|
}
|
|
143
|
-
const renderRemoveAction = (type, id) => isDiscovery ? undefined : (_jsx(Button, { variant: "link", size: "sm", type: "button", className: "text-
|
|
143
|
+
const renderRemoveAction = (type, id) => isDiscovery ? undefined : (_jsx(Button, { variant: "link", size: "sm", type: "button", className: "text-destructive hover:text-destructive/90", onClick: () => handleRemove(type, id), children: "Remove" }));
|
|
144
144
|
const tabs = [
|
|
145
145
|
{ key: 'surfaces', label: 'Surfaces', count: surfaces.length },
|
|
146
146
|
{ key: 'interactions', label: 'Interactions', count: interactions.length },
|
|
147
147
|
{ key: 'scenarios', label: 'Scenarios', count: scenarios.length },
|
|
148
148
|
];
|
|
149
|
-
return (_jsx(ContentLayout, { header: _jsxs("div", { className: "border-b border-
|
|
149
|
+
return (_jsx(ContentLayout, { header: _jsxs("div", { className: "border-b border-border bg-card px-4 pb-4 pt-4 sm:px-6 sm:pt-6", children: [_jsx(SEOHead, { title: bundle.title, description: "", noIndex: true }), _jsx(BackLink, { label: "Bundles", onClick: () => navigate(r.bundles()) }), _jsxs("div", { className: "mb-6", children: [editing ? (_jsxs("div", { className: "space-y-3", children: [_jsx("input", { type: "text", value: editTitle, onChange: e => setEditTitle(e.target.value), className: "w-full px-3 py-2 border border-input rounded-md bg-background text-foreground text-lg font-bold" }), _jsx("input", { type: "text", value: editDescription, onChange: e => setEditDescription(e.target.value), placeholder: "Description (optional)", className: "w-full px-3 py-2 border border-input rounded-md bg-background text-foreground text-sm" }), error && _jsx("p", { className: "text-sm text-destructive", children: error }), _jsxs("div", { className: "flex gap-2", children: [_jsx(ActionButton, { variant: "primary", isLoading: isUpdating, loadingText: "Saving...", onClick: handleSave, disabled: !editTitle.trim(), children: "Save" }), _jsx(Button, { variant: "outline", type: "button", onClick: () => setEditing(false), children: "Cancel" })] })] })) : (_jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("h1", { className: "text-2xl font-bold text-foreground", children: bundle.title }), bundle.description && (_jsx("p", { className: "text-sm text-muted-foreground mt-1", children: bundle.description }))] }), !isDiscovery && (_jsxs("div", { className: "flex gap-2", children: [_jsx(Button, { variant: "outline", type: "button", onClick: startEdit, children: "Edit" }), _jsx(Button, { variant: "destructive-outline", type: "button", onClick: handleDelete, children: "Delete" })] }))] })), !editing && error && _jsx("p", { className: "text-sm text-destructive mt-2", children: error })] })] }), children: _jsxs("div", { className: "px-4 py-4 sm:px-6", children: [_jsx(Tabs, { value: tab, onValueChange: v => setTab(v), className: "mb-4", children: _jsx(TabsList, { children: tabs.map(t => (_jsxs(TabsTrigger, { value: t.key, children: [t.label, t.count > 0 && (_jsxs("span", { className: "ml-1.5 text-xs text-muted-foreground", children: ["(", t.count, ")"] }))] }, t.key))) }) }), _jsxs("div", { children: [tab === 'surfaces' && (_jsxs(_Fragment, { children: [surfacesLoading && _jsx(LoadingState, {}), !surfacesLoading && surfaces.length === 0 && _jsx(EmptyState, { label: "surfaces" }), surfaces.length > 0 && (_jsx(CardGrid, { children: surfaces.map(s => (_jsx(SurfaceCell, { surface: s, variant: "tile", onClick: () => navigate(r.testSurface(s.id)), actions: renderRemoveAction('surfaces', s.id) }, s.id))) }))] })), tab === 'interactions' && (_jsxs(_Fragment, { children: [interactionsLoading && _jsx(LoadingState, {}), !interactionsLoading && interactions.length === 0 && (_jsx(EmptyState, { label: "interactions" })), interactions.length > 0 && (_jsx(CardGrid, { children: interactions.map(i => (_jsx(InteractionCell, { interaction: i, variant: "tile", onClick: () => navigate(r.testInteraction(i.id)), actions: renderRemoveAction('interactions', i.id) }, i.id))) }))] })), tab === 'scenarios' && (_jsxs(_Fragment, { children: [scenariosLoading && _jsx(LoadingState, {}), !scenariosLoading && scenarios.length === 0 && _jsx(EmptyState, { label: "scenarios" }), scenarios.length > 0 && (_jsx(CardGrid, { children: scenarios.map(s => (_jsx(ScenarioCell, { scenario: s, variant: "tile", onClick: () => navigate(r.testScenario(s.id)), actions: renderRemoveAction('scenarios', s.id) }, s.id))) }))] }))] })] }) }));
|
|
150
150
|
}
|
|
151
151
|
function LoadingState() {
|
|
152
|
-
return
|
|
152
|
+
return _jsx("div", { className: "text-sm text-muted-foreground py-8 text-center", children: "Loading..." });
|
|
153
153
|
}
|
|
154
154
|
function EmptyState({ label }) {
|
|
155
|
-
return (_jsxs("div", { className: "text-sm text-
|
|
155
|
+
return (_jsxs("div", { className: "text-sm text-muted-foreground py-8 text-center", children: ["No ", label, " in this bundle"] }));
|
|
156
156
|
}
|
|
157
157
|
//# sourceMappingURL=BundleDetailPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BundleDetailPage.js","sourceRoot":"","sources":["../../src/pages/BundleDetailPage.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BundleDetailPage.js","sourceRoot":"","sources":["../../src/pages/BundleDetailPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BundlesPage.d.ts","sourceRoot":"","sources":["../../src/pages/BundlesPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BundlesPage.d.ts","sourceRoot":"","sources":["../../src/pages/BundlesPage.tsx"],"names":[],"mappings":"AAuBA,wBAAgB,WAAW,gCAoJ1B"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState } from 'react';
|
|
3
|
-
import {
|
|
4
|
-
import { Button, ActionButton,
|
|
5
|
-
import { EXPERTISE_OPTIONS } from '@sudobility/testomniac_lib';
|
|
3
|
+
import { useRunnerTestSurfaceBundles, useCreateTestSurfaceBundle, } from '@sudobility/testomniac_client';
|
|
4
|
+
import { Button, ActionButton, Card, Input, Label, ContentLayout, CardGrid, } from '@sudobility/components';
|
|
6
5
|
import { SEOHead, useTestomniacApi } from '../context/config';
|
|
7
6
|
import { AddButton } from '../components/ui/AddButton';
|
|
8
7
|
import { BundleCell } from '../components/cells';
|
|
@@ -10,22 +9,15 @@ import { useDashboardEnvironmentContext } from '../hooks/useDashboardEnvironment
|
|
|
10
9
|
import { useEnvRoutes } from '../context/routing';
|
|
11
10
|
import { useLocalizedNavigate } from '../hooks/useLocalizedNavigate';
|
|
12
11
|
import { EmptyState } from '../components/states';
|
|
13
|
-
function ScanSettingsPanel({ title, description, selectedExpertises, onToggle, onSave, isSaving, overrideCount, }) {
|
|
14
|
-
return (_jsxs(Card, { variant: "bordered", className: "space-y-3", children: [_jsxs("div", { children: [_jsx("h2", { className: "text-sm font-semibold text-gray-900 dark:text-gray-100", children: title }), _jsx("p", { className: "mt-1 text-xs text-gray-500 dark:text-gray-400", children: description })] }), _jsx("div", { className: "grid grid-cols-1 gap-2 sm:grid-cols-2", children: EXPERTISE_OPTIONS.map(option => (_jsx(Checkbox, { checked: selectedExpertises.includes(option.slug), onChange: checked => onToggle(option.slug, checked), label: option.label }, option.slug))) }), _jsxs("div", { className: "flex items-center justify-between gap-3 text-xs text-gray-500 dark:text-gray-400", children: [_jsxs("span", { children: [overrideCount, " rule override(s)"] }), _jsx(ActionButton, { variant: "primary", onClick: () => void onSave(), isLoading: isSaving, loadingText: "Saving...", children: "Save" })] })] }));
|
|
15
|
-
}
|
|
16
12
|
export function BundlesPage() {
|
|
17
13
|
const { navigate } = useLocalizedNavigate();
|
|
18
14
|
const { baseUrl } = useTestomniacApi();
|
|
19
|
-
const { networkClient, token, primaryRunner,
|
|
15
|
+
const { networkClient, token, primaryRunner, isLoading: contextLoading, error: contextError, } = useDashboardEnvironmentContext();
|
|
20
16
|
const [showForm, setShowForm] = useState(false);
|
|
21
17
|
const [title, setTitle] = useState('');
|
|
22
18
|
const [description, setDescription] = useState('');
|
|
23
19
|
const [formError, setFormError] = useState(null);
|
|
24
|
-
const [settingsError, setSettingsError] = useState(null);
|
|
25
|
-
const [productExpertisesOverride, setProductExpertisesOverride] = useState(null);
|
|
26
|
-
const [environmentExpertisesOverride, setEnvironmentExpertisesOverride] = useState(null);
|
|
27
20
|
const runnerId = primaryRunner?.id ?? 0;
|
|
28
|
-
const environmentId = envId;
|
|
29
21
|
const r = useEnvRoutes();
|
|
30
22
|
const bundlesQuery = useRunnerTestSurfaceBundles(networkClient, baseUrl, token ?? '', runnerId, {
|
|
31
23
|
enabled: !!token && !!primaryRunner,
|
|
@@ -36,64 +28,6 @@ export function BundlesPage() {
|
|
|
36
28
|
const refetch = bundlesQuery.refetch;
|
|
37
29
|
const createBundleMutation = useCreateTestSurfaceBundle(networkClient, baseUrl);
|
|
38
30
|
const isCreating = createBundleMutation.isPending;
|
|
39
|
-
const productScanSettingsQuery = useProductScanSettings(networkClient, baseUrl, token ?? '', productId ?? 0, {
|
|
40
|
-
enabled: !!token && !!productId,
|
|
41
|
-
});
|
|
42
|
-
const environmentScanSettingsQuery = useEnvironmentScanSettings(networkClient, baseUrl, token ?? '', productId ?? 0, environmentId, {
|
|
43
|
-
enabled: !!token && !!productId && !!environmentId,
|
|
44
|
-
});
|
|
45
|
-
const effectiveScanSettingsQuery = useEffectiveEnvironmentScanSettings(networkClient, baseUrl, token ?? '', productId ?? 0, environmentId, {
|
|
46
|
-
enabled: !!token && !!productId && !!environmentId,
|
|
47
|
-
});
|
|
48
|
-
const updateProductScanSettingsMutation = useUpdateProductScanSettings(networkClient, baseUrl);
|
|
49
|
-
const updateEnvironmentScanSettingsMutation = useUpdateEnvironmentScanSettings(networkClient, baseUrl);
|
|
50
|
-
const productExpertises = productExpertisesOverride ?? productScanSettingsQuery.data?.data?.expertiseSlugs ?? [];
|
|
51
|
-
const environmentExpertises = environmentExpertisesOverride ?? environmentScanSettingsQuery.data?.data?.expertiseSlugs ?? [];
|
|
52
|
-
function toggleSelection(setter, slug, checked) {
|
|
53
|
-
setter(prev => {
|
|
54
|
-
const source = prev ?? [];
|
|
55
|
-
return checked ? [...source, slug] : source.filter(item => item !== slug);
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
async function saveProductSettings() {
|
|
59
|
-
if (!productId)
|
|
60
|
-
return;
|
|
61
|
-
setSettingsError(null);
|
|
62
|
-
try {
|
|
63
|
-
await updateProductScanSettingsMutation.mutateAsync({
|
|
64
|
-
token: token ?? '',
|
|
65
|
-
productId,
|
|
66
|
-
data: {
|
|
67
|
-
expertiseSlugs: productExpertises,
|
|
68
|
-
ruleOverrides: productScanSettingsQuery.data?.data?.ruleOverrides ?? null,
|
|
69
|
-
},
|
|
70
|
-
});
|
|
71
|
-
setProductExpertisesOverride(null);
|
|
72
|
-
}
|
|
73
|
-
catch (err) {
|
|
74
|
-
setSettingsError(err instanceof Error ? err.message : 'Failed to save product scan settings');
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
async function saveEnvironmentSettings() {
|
|
78
|
-
if (!productId || !environmentId)
|
|
79
|
-
return;
|
|
80
|
-
setSettingsError(null);
|
|
81
|
-
try {
|
|
82
|
-
await updateEnvironmentScanSettingsMutation.mutateAsync({
|
|
83
|
-
token: token ?? '',
|
|
84
|
-
productId,
|
|
85
|
-
environmentId,
|
|
86
|
-
data: {
|
|
87
|
-
expertiseSlugs: environmentExpertises,
|
|
88
|
-
ruleOverrides: environmentScanSettingsQuery.data?.data?.ruleOverrides ?? null,
|
|
89
|
-
},
|
|
90
|
-
});
|
|
91
|
-
setEnvironmentExpertisesOverride(null);
|
|
92
|
-
}
|
|
93
|
-
catch (err) {
|
|
94
|
-
setSettingsError(err instanceof Error ? err.message : 'Failed to save environment scan settings');
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
31
|
const handleCreate = async () => {
|
|
98
32
|
if (!title.trim())
|
|
99
33
|
return;
|
|
@@ -118,11 +52,11 @@ export function BundlesPage() {
|
|
|
118
52
|
}
|
|
119
53
|
};
|
|
120
54
|
if (contextLoading || isLoading) {
|
|
121
|
-
return (_jsx("div", { className: "p-6", children: _jsx("div", { className: "text-center text-
|
|
55
|
+
return (_jsx("div", { className: "p-6", children: _jsx("div", { className: "text-center text-muted-foreground py-8", children: "Loading..." }) }));
|
|
122
56
|
}
|
|
123
57
|
if (contextError || error) {
|
|
124
|
-
return (_jsx("div", { className: "p-6", children: _jsxs("div", { className: "text-center text-
|
|
58
|
+
return (_jsx("div", { className: "p-6", children: _jsxs("div", { className: "text-center text-destructive py-8", children: ["Error: ", contextError || error] }) }));
|
|
125
59
|
}
|
|
126
|
-
return (_jsx(ContentLayout, { header: _jsxs("div", { className: "border-b border-
|
|
60
|
+
return (_jsx(ContentLayout, { header: _jsxs("div", { className: "border-b border-border bg-card px-4 pb-4 pt-4 sm:px-6 sm:pt-6", children: [_jsx(SEOHead, { title: "Bundles", description: "", noIndex: true }), _jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between", children: [_jsx("h1", { className: "text-2xl font-bold text-foreground", children: "Test Bundles" }), primaryRunner && (_jsx(AddButton, { label: "New Bundle", active: showForm, onClick: () => setShowForm(!showForm) }))] })] }), children: _jsxs("div", { className: "px-4 py-4 sm:px-6", children: [showForm && (_jsxs(Card, { variant: "bordered", className: "mb-6 space-y-3", children: [_jsxs("div", { children: [_jsx(Label, { className: "mb-1 block", children: "Title" }), _jsx(Input, { type: "text", value: title, onChange: e => setTitle(e.target.value), placeholder: "e.g., Checkout Flow Tests", className: "w-full" })] }), _jsxs("div", { children: [_jsx(Label, { className: "mb-1 block", children: "Description" }), _jsx(Input, { type: "text", value: description, onChange: e => setDescription(e.target.value), placeholder: "Optional description", className: "w-full" })] }), formError && _jsx("p", { className: "text-sm text-destructive", children: formError }), _jsxs("div", { className: "flex gap-2", children: [_jsx(ActionButton, { type: "button", variant: "primary", onClick: handleCreate, disabled: !title.trim(), isLoading: isCreating, loadingText: "Creating...", children: "Create Bundle" }), _jsx(Button, { variant: "outline", type: "button", onClick: () => setShowForm(false), children: "Cancel" })] })] })), bundles.length === 0 && !showForm ? (_jsx(EmptyState, { title: "No bundles yet", description: "Bundles are created during discovery scans or can be composed manually." })) : (_jsx(CardGrid, { children: bundles.map((bundle) => (_jsx(BundleCell, { bundle: bundle, variant: "tile", onClick: () => navigate(r.bundle(bundle.id)) }, bundle.id))) }))] }) }));
|
|
127
61
|
}
|
|
128
62
|
//# sourceMappingURL=BundlesPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BundlesPage.js","sourceRoot":"","sources":["../../src/pages/BundlesPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"BundlesPage.js","sourceRoot":"","sources":["../../src/pages/BundlesPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateProductPage.d.ts","sourceRoot":"","sources":["../../src/pages/CreateProductPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CreateProductPage.d.ts","sourceRoot":"","sources":["../../src/pages/CreateProductPage.tsx"],"names":[],"mappings":"AAgCA;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,gCAiYhC"}
|
|
@@ -2,13 +2,13 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
|
2
2
|
import { useEffect, useMemo, useState } from 'react';
|
|
3
3
|
import { useQueryClient } from '@tanstack/react-query';
|
|
4
4
|
import { useResolveProductByUrl } from '@sudobility/testomniac_client';
|
|
5
|
-
import { useCreateProductFlow, useProductSelectionStore, EXPERTISE_OPTIONS, DEFAULT_EXPERTISE_SLUGS, SCAN_MODE_OPTIONS, environmentOptions, resolveEnvironmentContext, } from '@sudobility/testomniac_lib';
|
|
5
|
+
import { useCreateProductFlow, useProductSelectionStore, useCreateProductDraftStore, EXPERTISE_OPTIONS, DEFAULT_EXPERTISE_SLUGS, SCAN_MODE_OPTIONS, environmentOptions, resolveEnvironmentContext, } from '@sudobility/testomniac_lib';
|
|
6
6
|
import { Select, SelectTrigger, SelectContent, SelectItem, SelectValue, } from '@sudobility/components';
|
|
7
7
|
import { useTestomniacApi } from '../context/config';
|
|
8
8
|
import { useRouteParams, useRoutes } from '../context/routing';
|
|
9
9
|
import { useLocalizedNavigate } from '../hooks/useLocalizedNavigate';
|
|
10
|
-
const labelCls = 'block text-[11px] font-semibold uppercase tracking-wide text-
|
|
11
|
-
const inputCls = 'w-full rounded-md border border-
|
|
10
|
+
const labelCls = 'block text-[11px] font-semibold uppercase tracking-wide text-muted-foreground mb-1';
|
|
11
|
+
const inputCls = 'w-full rounded-md border border-input bg-background px-2.5 py-1.5 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring';
|
|
12
12
|
/**
|
|
13
13
|
* Dashboard "Create Product" page. Mirrors the extension's scan-setup UI:
|
|
14
14
|
* enter a URL, pick environment / expertises / scan depth / optional login, and
|
|
@@ -25,6 +25,7 @@ export function CreateProductPage() {
|
|
|
25
25
|
const { networkClient, token, baseUrl } = useTestomniacApi();
|
|
26
26
|
const queryClient = useQueryClient();
|
|
27
27
|
const setSelectedProductId = useProductSelectionStore(s => s.setSelectedProductId);
|
|
28
|
+
const setDraftDirty = useCreateProductDraftStore(s => s.setDirty);
|
|
28
29
|
const [url, setUrl] = useState('');
|
|
29
30
|
const [debouncedUrl, setDebouncedUrl] = useState('');
|
|
30
31
|
const [selectedEnvironment, setSelectedEnvironment] = useState('production');
|
|
@@ -41,6 +42,19 @@ export function CreateProductPage() {
|
|
|
41
42
|
const handle = setTimeout(() => setDebouncedUrl(url.trim()), 500);
|
|
42
43
|
return () => clearTimeout(handle);
|
|
43
44
|
}, [url]);
|
|
45
|
+
// Has the user entered anything worth keeping? Mirrored into a shared store so
|
|
46
|
+
// the sidebar can warn before a workspace/product switch discards it. Reset on
|
|
47
|
+
// unmount so leaving the page by any route clears the guard.
|
|
48
|
+
const draftDirty = url.trim() !== '' ||
|
|
49
|
+
continueWithLogin ||
|
|
50
|
+
loginUrl.trim() !== '' ||
|
|
51
|
+
credEmail.trim() !== '' ||
|
|
52
|
+
credPassword !== '' ||
|
|
53
|
+
customEnvironmentLabel.trim() !== '';
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
setDraftDirty(draftDirty);
|
|
56
|
+
}, [draftDirty, setDraftDirty]);
|
|
57
|
+
useEffect(() => () => setDraftDirty(false), [setDraftDirty]);
|
|
44
58
|
const isValidUrl = useMemo(() => {
|
|
45
59
|
if (!debouncedUrl)
|
|
46
60
|
return false;
|
|
@@ -76,6 +90,7 @@ export function CreateProductPage() {
|
|
|
76
90
|
function openExisting() {
|
|
77
91
|
if (!existing)
|
|
78
92
|
return;
|
|
93
|
+
setDraftDirty(false);
|
|
79
94
|
setSelectedProductId(String(existing.product.id));
|
|
80
95
|
navigate(routes.bundles(entitySlug, existing.testEnvironment.id));
|
|
81
96
|
}
|
|
@@ -122,6 +137,7 @@ export function CreateProductPage() {
|
|
|
122
137
|
if (result) {
|
|
123
138
|
// Select the new product so the sidebar reflects it, refresh the product
|
|
124
139
|
// list, and land on its Runs page where the new (pending) run appears.
|
|
140
|
+
setDraftDirty(false);
|
|
125
141
|
setSelectedProductId(String(result.productId));
|
|
126
142
|
queryClient.invalidateQueries({
|
|
127
143
|
predicate: q => Array.isArray(q.queryKey) && q.queryKey.includes('products'),
|
|
@@ -129,18 +145,18 @@ export function CreateProductPage() {
|
|
|
129
145
|
navigate(routes.runs(entitySlug, result.testEnvironmentId));
|
|
130
146
|
}
|
|
131
147
|
}
|
|
132
|
-
return (_jsx("div", { className: "h-full overflow-y-auto", children: _jsxs("div", { className: "mx-auto max-w-2xl px-5 py-6 space-y-5", children: [_jsxs("div", { children: [_jsx("h1", { className: "text-lg font-semibold text-
|
|
148
|
+
return (_jsx("div", { className: "h-full overflow-y-auto", children: _jsxs("div", { className: "mx-auto max-w-2xl px-5 py-6 space-y-5", children: [_jsxs("div", { children: [_jsx("h1", { className: "text-lg font-semibold text-foreground", children: "Create Product" }), _jsx("p", { className: "mt-0.5 text-[13px] text-muted-foreground", children: "Enter a URL to scan. We'll set up the product and start a discovery run." })] }), _jsxs("div", { children: [_jsx("label", { className: labelCls, children: "URL" }), _jsx("input", { type: "text", value: url, onChange: e => setUrl(e.target.value), placeholder: "https://example.com", spellCheck: false, className: inputCls }), url.trim() && !isValidUrl && (_jsx("p", { className: "mt-1 text-[11px] text-warning", children: "Enter a full URL including https://" })), checking && (_jsx("p", { className: "mt-1 text-[11px] text-muted-foreground", children: "Checking for an existing product\u2026" }))] }), existing && (_jsxs("div", { className: "rounded-lg border border-warning/20 bg-warning/10 px-3 py-3", children: [_jsxs("p", { className: "text-sm font-medium text-warning", children: ["This URL already belongs to \u201C", existing.product.title, "\u201D."] }), _jsx("p", { className: "mt-0.5 text-[12px] text-warning", children: "A product for this URL already exists in this workspace." }), _jsx("button", { type: "button", onClick: openExisting, className: "mt-2 rounded-md bg-warning px-3 py-1.5 text-[12px] font-medium text-warning-foreground hover:bg-warning/90", children: "Open existing product \u2192" })] })), isValidUrl && !existing && !checking && (_jsxs(_Fragment, { children: [_jsxs("div", { children: [_jsx("label", { className: labelCls, children: "Environment" }), envContext.kind === 'local' ? (_jsxs("div", { className: "rounded-md border border-success/20 bg-success/10 px-3 py-2 text-[12px] text-success", children: ["Local environment on ", envContext.hostname] })) : (_jsxs("div", { className: "space-y-2", children: [_jsxs(Select, { value: selectedEnvironment, onValueChange: v => setSelectedEnvironment(v), children: [_jsx(SelectTrigger, { className: "w-full", children: _jsx(SelectValue, { placeholder: "Select environment" }) }), _jsx(SelectContent, { children: environmentOptions.map(opt => (_jsx(SelectItem, { value: opt.value, children: opt.label }, opt.value))) })] }), selectedEnvironment === 'custom' && (_jsx("input", { type: "text", value: customEnvironmentLabel, onChange: e => setCustomEnvironmentLabel(e.target.value), placeholder: "Environment label", className: inputCls })), _jsxs("p", { className: "text-[11px] text-muted-foreground", children: ["Scans for ", envContext.hostname, " are stored under", ' ', _jsx("span", { className: "font-medium text-foreground", children: envContext.label || 'an environment label' }), "."] })] }))] }), _jsxs("div", { children: [_jsx("label", { className: labelCls, children: "Expertises" }), _jsx("div", { className: "space-y-1.5 rounded-md border border-border bg-muted px-3 py-2", children: EXPERTISE_OPTIONS.map(opt => {
|
|
133
149
|
const checked = selectedExpertiseSlugs.includes(opt.slug);
|
|
134
|
-
return (_jsxs("label", { className: "flex items-center justify-between gap-2 text-[13px] text-
|
|
150
|
+
return (_jsxs("label", { className: "flex items-center justify-between gap-2 text-[13px] text-foreground", children: [_jsxs("span", { children: [opt.label, opt.required ? ' (required)' : ''] }), _jsx("input", { type: "checkbox", checked: checked, disabled: opt.required, onChange: e => !opt.required && toggleExpertise(opt.slug, e.target.checked) })] }, opt.slug));
|
|
135
151
|
}) })] }), _jsxs("div", { children: [_jsx("label", { className: labelCls, children: "Scan depth" }), _jsx("div", { className: "flex gap-1.5", children: SCAN_MODE_OPTIONS.map(opt => (_jsx("button", { type: "button", onClick: () => setScanMode(opt.value), className: [
|
|
136
152
|
'flex-1 rounded-md border py-1.5 text-[12px] font-medium transition-colors',
|
|
137
153
|
scanMode === opt.value
|
|
138
|
-
? 'border-
|
|
139
|
-
: 'border-
|
|
140
|
-
].join(' '), children: opt.label }, opt.value))) }), _jsx("p", { className: "mt-1 text-[11px] text-
|
|
154
|
+
? 'border-primary bg-primary text-primary-foreground'
|
|
155
|
+
: 'border-input bg-card text-muted-foreground hover:border-muted-foreground',
|
|
156
|
+
].join(' '), children: opt.label }, opt.value))) }), _jsx("p", { className: "mt-1 text-[11px] text-muted-foreground", children: SCAN_MODE_OPTIONS.find(o => o.value === scanMode)?.description })] }), _jsxs("div", { children: [_jsxs("label", { className: "flex cursor-pointer items-center gap-2 text-[13px] font-medium text-foreground", children: [_jsx("input", { type: "checkbox", checked: continueWithLogin, onChange: e => {
|
|
141
157
|
setContinueWithLogin(e.target.checked);
|
|
142
158
|
if (!e.target.checked)
|
|
143
159
|
setLoginUrl('');
|
|
144
|
-
} }), "Continue with login"] }), continueWithLogin && (_jsxs("div", { className: "mt-2 space-y-2 rounded-md border border-
|
|
160
|
+
} }), "Continue with login"] }), continueWithLogin && (_jsxs("div", { className: "mt-2 space-y-2 rounded-md border border-border bg-muted px-3 py-2", children: [_jsxs("div", { children: [_jsx("label", { className: labelCls, children: "Email" }), _jsx("input", { type: "email", value: credEmail, onChange: e => setCredEmail(e.target.value), placeholder: "user@example.com", className: inputCls })] }), _jsxs("div", { children: [_jsx("label", { className: labelCls, children: "Password" }), _jsx("input", { type: "password", value: credPassword, onChange: e => setCredPassword(e.target.value), placeholder: "Password", className: inputCls })] }), _jsxs("div", { children: [_jsx("label", { className: labelCls, children: "Environment settings (JSON)" }), _jsx("textarea", { value: userDataJson, onChange: e => setUserDataJson(e.target.value), rows: 5, spellCheck: false, placeholder: '{ "credential": { "email": "...", "password": "..." } }', className: `${inputCls} font-mono text-[12px]` }), _jsxs("p", { className: "mt-0.5 text-[11px] text-muted-foreground", children: ["The email/password above are merged into ", _jsx("code", { children: "credential" }), " on save."] })] }), _jsxs("div", { children: [_jsx("label", { className: labelCls, children: "Login URL (optional)" }), _jsx("input", { type: "text", value: loginUrl, onChange: e => setLoginUrl(e.target.value), placeholder: "https://example.com/login", className: inputCls })] })] }))] }), error && (_jsx("div", { className: "rounded-md bg-destructive/10 px-3 py-2 text-[12px] text-destructive", children: error })), _jsx("button", { type: "button", onClick: handleStart, disabled: !canSubmit, className: "w-full rounded-md bg-success px-3 py-2.5 text-sm font-semibold text-success-foreground hover:bg-success/90 disabled:cursor-not-allowed disabled:bg-success/50", children: isSubmitting ? 'Starting…' : 'Start Scanning' })] }))] }) }));
|
|
145
161
|
}
|
|
146
162
|
//# sourceMappingURL=CreateProductPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateProductPage.js","sourceRoot":"","sources":["../../src/pages/CreateProductPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,GAG1B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,MAAM,QAAQ,GACZ
|
|
1
|
+
{"version":3,"file":"CreateProductPage.js","sourceRoot":"","sources":["../../src/pages/CreateProductPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardOverview.d.ts","sourceRoot":"","sources":["../../src/pages/DashboardOverview.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DashboardOverview.d.ts","sourceRoot":"","sources":["../../src/pages/DashboardOverview.tsx"],"names":[],"mappings":"AAiaA,wBAAgB,iBAAiB,gCAsOhC"}
|