feat: MSK, MSK CONNECT and SES

This commit is contained in:
Zakaria
2026-10-05 11:06:57 -04:00
parent 2d8ff50a99
commit c0d3e5f402
84 changed files with 3513 additions and 195 deletions
@@ -65,9 +65,13 @@ import { LoadBalancerListenerPanel } from "@/components/LoadBalancerListenerPane
import { WorkflowExecutionDebugger } from "@/components/WorkflowExecutionDebugger";
import { CodeBuildPanel } from "@/components/CodeBuildPanel";
import { CodePipelinePanel } from "@/components/CodePipelinePanel";
import { MskPanel } from "@/components/MskPanel";
import { MskConnectPanel } from "@/components/MskConnectPanel";
import { EcsServicePanel } from "@/components/EcsServicePanel";
import {CodeDeployCreatePanel, CodeDeployPanel} from "@/components/CodeDeployPanel";
import {WorkflowCreatePanel} from "@/components/WorkflowCreatePanel";
import {KinesisPanel} from "@/components/KinesisPanel";
import {SesConsolePanel} from '@/components/SesConsolePanel'
import {workflowCreationDestinationPath, type WorkflowCreationDestination} from "@/lib/workflowCreate";
import {workflowStudioPath} from "@/lib/workflowStudio";
import {useNavigate, useSearchParams} from "react-router-dom";
@@ -138,6 +142,7 @@ export function DynamicResourceView({
const schemaQuery = useQuery({
queryKey: ["cloud-schema", cloud, service],
queryFn: ({ signal }) => getServiceSchema(cloud, service, signal),
enabled: !(cloud === "aws" && (service === "msk" || service === "msk-connect")),
});
const resourcesQuery = useQuery({
@@ -496,6 +501,19 @@ export function DynamicResourceView({
const adapterAvailable = serviceAvailability === "available";
if (cloud === "aws" && service === "msk") {
return (
<div className="dynamic-resource-view">
<TopbarServiceInfo onOpenInfo={onOpenInfo} />
<MskPanel runtimeReachable={cloudStatus?.runtime === "reachable"} />
</div>
);
}
if (cloud === "aws" && service === "msk-connect") {
return <div className="dynamic-resource-view"><TopbarServiceInfo onOpenInfo={onOpenInfo} /><MskConnectPanel runtimeReachable={cloudStatus?.runtime === "reachable"} /></div>;
}
if (schemaQuery.isLoading) {
return (
<div className="dynamic-resource-view">
@@ -600,6 +618,7 @@ export function DynamicResourceView({
className={`resource-workbench${activeSelected && !showDatabaseSnapshots ? " with-inspector" : ""}`}
>
<section className="resource-main">
{cloud === 'aws' && service === 'email' && <SesConsolePanel runtimeReachable={canUseRuntime}/>}
{isAwsDatabase && (
<div className="drawer-tabs" style={{ marginBottom: 12 }}>
<button
@@ -966,6 +985,7 @@ export function DynamicResourceView({
resource={activeSelected}
runtimeReachable={canUseRuntime}
/>
<KinesisPanel cloud={cloud} resource={activeSelected} runtimeReachable={canUseRuntime} mode="lambda" />
{cloud === "aws" && activeSelected?.type === "lambda" && (
<LambdaInvocationHistoryPanel cloud={cloud} functionName={activeSelected.name} runtimeReachable={canUseRuntime}/>
)}
@@ -1020,6 +1040,7 @@ export function DynamicResourceView({
{service === "codedeploy" && cloud === "aws" && (
<CodeDeployPanel resource={activeSelected} runtimeReachable={canUseRuntime} />
)}
{service === "kinesis" && cloud === "aws" && <KinesisPanel cloud={cloud} resource={activeSelected} runtimeReachable={canUseRuntime} mode="stream" />}
{editingResource && schema.updateFields && (
<div
className="modal-overlay"