Skip to content

Commit bb58f4d

Browse files
Copilothotlong
andcommitted
feat(studio): add global REST API console with auto-discovery
- Add useApiDiscovery hook for automatic endpoint discovery from metadata - Add ApiConsolePage component with endpoint tree, search, request/response panels - Add api-console view to App.tsx routing - Add API Console entry to sidebar under System section - Update site-header breadcrumb for api-console view - Add tests for API discovery logic Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
1 parent cb8ee57 commit bb58f4d

6 files changed

Lines changed: 706 additions & 4 deletions

File tree

apps/studio/src/App.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,14 @@ import { SiteHeader } from "@/components/site-header"
99
import { SidebarProvider } from "@/components/ui/sidebar"
1010
import { DeveloperOverview } from './components/DeveloperOverview';
1111
import { PackageManager } from './components/PackageManager';
12+
import { ApiConsolePage } from './components/ApiConsolePage';
1213
import { Toaster } from "@/components/ui/toaster"
1314
import { getApiBaseUrl, config } from './lib/config';
1415
import { PluginRegistryProvider, PluginHost } from './plugins';
1516
import { builtInPlugins } from './plugins/built-in';
1617
import type { InstalledPackage } from '@objectstack/spec/kernel';
1718

18-
type ViewType = 'overview' | 'packages' | 'object' | 'metadata';
19+
type ViewType = 'overview' | 'packages' | 'object' | 'metadata' | 'api-console';
1920

2021
export default function App() {
2122
const [client, setClient] = useState<ObjectStackClient | null>(null);
@@ -129,6 +130,8 @@ export default function App() {
129130
<PluginHost metadataType={selectedMeta.type} metadataName={selectedMeta.name} />
130131
) : selectedView === 'packages' ? (
131132
<PackageManager />
133+
) : selectedView === 'api-console' ? (
134+
<ApiConsolePage />
132135
) : (
133136
<DeveloperOverview
134137
packages={packages}

0 commit comments

Comments
 (0)