@wakastellar/ui 2.1.1 → 2.3.0

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 (78) hide show
  1. package/dist/blocks/apm-overview/index.d.ts +58 -0
  2. package/dist/blocks/auth-2fa/index.d.ts +38 -0
  3. package/dist/blocks/chat-interface/index.d.ts +66 -0
  4. package/dist/blocks/checkout-flow/index.d.ts +76 -0
  5. package/dist/blocks/cicd-builder/index.d.ts +47 -0
  6. package/dist/blocks/cloud-cost-dashboard/index.d.ts +49 -0
  7. package/dist/blocks/container-orchestrator/index.d.ts +63 -0
  8. package/dist/blocks/dashboard-kpi/index.d.ts +69 -0
  9. package/dist/blocks/database-admin/index.d.ts +84 -0
  10. package/dist/blocks/deployment-dashboard/index.d.ts +68 -0
  11. package/dist/blocks/gitops-sync-status/index.d.ts +45 -0
  12. package/dist/blocks/incident-manager/index.d.ts +44 -0
  13. package/dist/blocks/index.d.ts +17 -0
  14. package/dist/blocks/infrastructure-map/index.d.ts +32 -0
  15. package/dist/blocks/on-call-schedule/index.d.ts +43 -0
  16. package/dist/blocks/player-profile/index.d.ts +78 -0
  17. package/dist/blocks/release-notes/index.d.ts +49 -0
  18. package/dist/components/index.d.ts +19 -0
  19. package/dist/components/waka-alert-panel/index.d.ts +45 -0
  20. package/dist/components/waka-artifact-list/index.d.ts +32 -0
  21. package/dist/components/waka-build-matrix/index.d.ts +36 -0
  22. package/dist/components/waka-config-comparator/index.d.ts +37 -0
  23. package/dist/components/waka-container-list/index.d.ts +51 -0
  24. package/dist/components/waka-database-card/index.d.ts +46 -0
  25. package/dist/components/waka-dependency-tree/index.d.ts +38 -0
  26. package/dist/components/waka-env-var-editor/index.d.ts +30 -0
  27. package/dist/components/waka-feature-flag-row/index.d.ts +45 -0
  28. package/dist/components/waka-kubernetes-overview/index.d.ts +98 -0
  29. package/dist/components/waka-log-viewer/index.d.ts +38 -0
  30. package/dist/components/waka-migration-list/index.d.ts +36 -0
  31. package/dist/components/waka-pod-card/index.d.ts +73 -0
  32. package/dist/components/waka-query-explain/index.d.ts +48 -0
  33. package/dist/components/waka-secret-card/index.d.ts +43 -0
  34. package/dist/components/waka-security-scan-result/index.d.ts +45 -0
  35. package/dist/components/waka-service-graph/index.d.ts +44 -0
  36. package/dist/components/waka-test-report/index.d.ts +60 -0
  37. package/dist/components/waka-trace-viewer/index.d.ts +36 -0
  38. package/dist/index.cjs.js +246 -199
  39. package/dist/index.es.js +48239 -36286
  40. package/package.json +1 -1
  41. package/src/blocks/apm-overview/index.tsx +672 -0
  42. package/src/blocks/auth-2fa/index.tsx +655 -0
  43. package/src/blocks/chat-interface/index.tsx +611 -0
  44. package/src/blocks/checkout-flow/index.tsx +771 -0
  45. package/src/blocks/cicd-builder/index.tsx +738 -0
  46. package/src/blocks/cloud-cost-dashboard/index.tsx +597 -0
  47. package/src/blocks/container-orchestrator/index.tsx +729 -0
  48. package/src/blocks/dashboard-kpi/index.tsx +424 -0
  49. package/src/blocks/database-admin/index.tsx +679 -0
  50. package/src/blocks/deployment-dashboard/index.tsx +609 -0
  51. package/src/blocks/gitops-sync-status/index.tsx +557 -0
  52. package/src/blocks/incident-manager/index.tsx +586 -0
  53. package/src/blocks/index.ts +143 -0
  54. package/src/blocks/infrastructure-map/index.tsx +638 -0
  55. package/src/blocks/on-call-schedule/index.tsx +615 -0
  56. package/src/blocks/player-profile/index.tsx +541 -0
  57. package/src/blocks/release-notes/index.tsx +643 -0
  58. package/src/components/index.ts +189 -0
  59. package/src/components/language-selector/index.tsx +21 -11
  60. package/src/components/waka-alert-panel/index.tsx +493 -0
  61. package/src/components/waka-artifact-list/index.tsx +416 -0
  62. package/src/components/waka-build-matrix/index.tsx +396 -0
  63. package/src/components/waka-config-comparator/index.tsx +416 -0
  64. package/src/components/waka-container-list/index.tsx +475 -0
  65. package/src/components/waka-database-card/index.tsx +473 -0
  66. package/src/components/waka-dependency-tree/index.tsx +542 -0
  67. package/src/components/waka-env-var-editor/index.tsx +417 -0
  68. package/src/components/waka-feature-flag-row/index.tsx +386 -0
  69. package/src/components/waka-kubernetes-overview/index.tsx +536 -0
  70. package/src/components/waka-log-viewer/index.tsx +386 -0
  71. package/src/components/waka-migration-list/index.tsx +487 -0
  72. package/src/components/waka-pod-card/index.tsx +528 -0
  73. package/src/components/waka-query-explain/index.tsx +657 -0
  74. package/src/components/waka-secret-card/index.tsx +371 -0
  75. package/src/components/waka-security-scan-result/index.tsx +473 -0
  76. package/src/components/waka-service-graph/index.tsx +445 -0
  77. package/src/components/waka-test-report/index.tsx +469 -0
  78. package/src/components/waka-trace-viewer/index.tsx +490 -0
@@ -0,0 +1,58 @@
1
+ export type ServiceStatus = "healthy" | "warning" | "critical" | "unknown";
2
+ export type TimeRange = "1h" | "6h" | "24h" | "7d" | "30d";
3
+ export interface ServiceMetrics {
4
+ requestsPerSecond: number;
5
+ avgResponseTime: number;
6
+ p50ResponseTime: number;
7
+ p95ResponseTime: number;
8
+ p99ResponseTime: number;
9
+ errorRate: number;
10
+ successRate: number;
11
+ activeConnections: number;
12
+ cpuUsage?: number;
13
+ memoryUsage?: number;
14
+ throughput?: number;
15
+ }
16
+ export interface ServiceEndpoint {
17
+ path: string;
18
+ method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
19
+ requestsPerMinute: number;
20
+ avgResponseTime: number;
21
+ errorRate: number;
22
+ status: ServiceStatus;
23
+ }
24
+ export interface APMService {
25
+ id: string;
26
+ name: string;
27
+ type: "api" | "web" | "worker" | "database" | "cache" | "queue";
28
+ status: ServiceStatus;
29
+ metrics: ServiceMetrics;
30
+ previousMetrics?: ServiceMetrics;
31
+ endpoints?: ServiceEndpoint[];
32
+ instances?: number;
33
+ version?: string;
34
+ dependencies?: string[];
35
+ tags?: string[];
36
+ }
37
+ export interface APMTransaction {
38
+ id: string;
39
+ name: string;
40
+ service: string;
41
+ duration: number;
42
+ timestamp: Date;
43
+ status: "success" | "error";
44
+ traceId?: string;
45
+ }
46
+ export interface APMOverviewProps {
47
+ services: APMService[];
48
+ recentTransactions?: APMTransaction[];
49
+ timeRange?: TimeRange;
50
+ onTimeRangeChange?: (range: TimeRange) => void;
51
+ onServiceClick?: (service: APMService) => void;
52
+ onTransactionClick?: (transaction: APMTransaction) => void;
53
+ onRefresh?: () => void;
54
+ className?: string;
55
+ }
56
+ export declare function APMOverview({ services, recentTransactions, timeRange, onTimeRangeChange, onServiceClick, onTransactionClick, onRefresh, className, }: APMOverviewProps): import("react/jsx-runtime").JSX.Element;
57
+ export declare const defaultAPMServices: APMService[];
58
+ export declare const defaultAPMTransactions: APMTransaction[];
@@ -0,0 +1,38 @@
1
+ export type TwoFactorMethod = "authenticator" | "sms" | "email" | "hardware";
2
+ export interface BackupCode {
3
+ code: string;
4
+ used: boolean;
5
+ }
6
+ export interface TwoFactorStatus {
7
+ enabled: boolean;
8
+ method?: TwoFactorMethod;
9
+ phone?: string;
10
+ email?: string;
11
+ lastVerified?: Date | string;
12
+ }
13
+ export interface Auth2FAProps {
14
+ /** Current 2FA status */
15
+ status?: TwoFactorStatus;
16
+ /** Available methods */
17
+ availableMethods?: TwoFactorMethod[];
18
+ /** QR code data URL for authenticator setup */
19
+ qrCodeUrl?: string;
20
+ /** Secret key for manual entry */
21
+ secretKey?: string;
22
+ /** Backup codes */
23
+ backupCodes?: BackupCode[];
24
+ /** Handler for enabling 2FA */
25
+ onEnable?: (method: TwoFactorMethod, verificationCode: string) => Promise<boolean>;
26
+ /** Handler for disabling 2FA */
27
+ onDisable?: (verificationCode: string) => Promise<boolean>;
28
+ /** Handler for regenerating backup codes */
29
+ onRegenerateBackupCodes?: () => Promise<BackupCode[]>;
30
+ /** Handler for sending verification code */
31
+ onSendCode?: (method: TwoFactorMethod) => Promise<boolean>;
32
+ /** Custom className */
33
+ className?: string;
34
+ }
35
+ export declare function Auth2FA({ status, availableMethods, qrCodeUrl, secretKey, backupCodes, onEnable, onDisable, onRegenerateBackupCodes, onSendCode, className, }: Auth2FAProps): import("react/jsx-runtime").JSX.Element;
36
+ export declare const defaultBackupCodes: BackupCode[];
37
+ export declare const defaultStatus: TwoFactorStatus;
38
+ export default Auth2FA;
@@ -0,0 +1,66 @@
1
+ export interface ChatUser {
2
+ id: string;
3
+ name: string;
4
+ avatar?: string;
5
+ status?: "online" | "offline" | "away" | "busy";
6
+ lastSeen?: Date | string;
7
+ }
8
+ export interface ChatMessage {
9
+ id: string;
10
+ content: string;
11
+ senderId: string;
12
+ timestamp: Date | string;
13
+ status?: "sending" | "sent" | "delivered" | "read";
14
+ replyTo?: string;
15
+ attachments?: ChatAttachment[];
16
+ reactions?: ChatReaction[];
17
+ }
18
+ export interface ChatAttachment {
19
+ id: string;
20
+ type: "image" | "file" | "audio";
21
+ name: string;
22
+ url: string;
23
+ size?: string;
24
+ thumbnail?: string;
25
+ }
26
+ export interface ChatReaction {
27
+ emoji: string;
28
+ userId: string;
29
+ }
30
+ export interface ChatConversation {
31
+ id: string;
32
+ participants: ChatUser[];
33
+ lastMessage?: ChatMessage;
34
+ unreadCount?: number;
35
+ isPinned?: boolean;
36
+ isGroup?: boolean;
37
+ groupName?: string;
38
+ groupAvatar?: string;
39
+ }
40
+ export interface ChatInterfaceProps {
41
+ /** Current user */
42
+ currentUser: ChatUser;
43
+ /** List of conversations */
44
+ conversations?: ChatConversation[];
45
+ /** Currently selected conversation */
46
+ selectedConversation?: ChatConversation;
47
+ /** Messages in selected conversation */
48
+ messages?: ChatMessage[];
49
+ /** Handler for sending message */
50
+ onSendMessage?: (content: string, attachments?: File[]) => void;
51
+ /** Handler for selecting conversation */
52
+ onSelectConversation?: (conversation: ChatConversation) => void;
53
+ /** Handler for typing indicator */
54
+ onTyping?: () => void;
55
+ /** Users currently typing */
56
+ typingUsers?: ChatUser[];
57
+ /** Show sidebar */
58
+ showSidebar?: boolean;
59
+ /** Custom className */
60
+ className?: string;
61
+ }
62
+ export declare function ChatInterface({ currentUser, conversations, selectedConversation, messages, onSendMessage, onSelectConversation, onTyping, typingUsers, showSidebar, className, }: ChatInterfaceProps): import("react/jsx-runtime").JSX.Element;
63
+ export declare const defaultUsers: ChatUser[];
64
+ export declare const defaultConversations: ChatConversation[];
65
+ export declare const defaultMessages: ChatMessage[];
66
+ export default ChatInterface;
@@ -0,0 +1,76 @@
1
+ import * as React from "react";
2
+ export interface CartItem {
3
+ id: string;
4
+ name: string;
5
+ description?: string;
6
+ price: number;
7
+ quantity: number;
8
+ image?: string;
9
+ variant?: string;
10
+ }
11
+ export interface ShippingMethod {
12
+ id: string;
13
+ name: string;
14
+ description: string;
15
+ price: number;
16
+ estimatedDays: string;
17
+ icon?: React.ReactNode;
18
+ }
19
+ export interface PaymentMethod {
20
+ id: string;
21
+ type: "card" | "paypal" | "apple" | "google" | "bank";
22
+ label: string;
23
+ icon?: React.ReactNode;
24
+ last4?: string;
25
+ }
26
+ export interface CheckoutAddress {
27
+ firstName: string;
28
+ lastName: string;
29
+ email: string;
30
+ phone: string;
31
+ address: string;
32
+ apartment?: string;
33
+ city: string;
34
+ state: string;
35
+ postalCode: string;
36
+ country: string;
37
+ }
38
+ export interface CheckoutFlowProps {
39
+ /** Cart items */
40
+ items: CartItem[];
41
+ /** Available shipping methods */
42
+ shippingMethods?: ShippingMethod[];
43
+ /** Available payment methods */
44
+ paymentMethods?: PaymentMethod[];
45
+ /** Coupon code handler */
46
+ onApplyCoupon?: (code: string) => Promise<{
47
+ discount: number;
48
+ type: "percent" | "fixed";
49
+ } | null>;
50
+ /** Applied discount */
51
+ discount?: {
52
+ code: string;
53
+ amount: number;
54
+ type: "percent" | "fixed";
55
+ };
56
+ /** Remove discount */
57
+ onRemoveDiscount?: () => void;
58
+ /** Submit order handler */
59
+ onSubmitOrder?: (data: {
60
+ address: CheckoutAddress;
61
+ shippingMethod: string;
62
+ paymentMethod: string;
63
+ saveInfo: boolean;
64
+ }) => Promise<void>;
65
+ /** Currency symbol */
66
+ currency?: string;
67
+ /** Tax rate (percentage) */
68
+ taxRate?: number;
69
+ /** Custom className */
70
+ className?: string;
71
+ }
72
+ export declare function CheckoutFlow({ items, shippingMethods, paymentMethods, onApplyCoupon, discount, onRemoveDiscount, onSubmitOrder, currency, taxRate, className, }: CheckoutFlowProps): import("react/jsx-runtime").JSX.Element;
73
+ export declare const defaultShippingMethods: ShippingMethod[];
74
+ export declare const defaultPaymentMethods: PaymentMethod[];
75
+ export declare const defaultCartItems: CartItem[];
76
+ export default CheckoutFlow;
@@ -0,0 +1,47 @@
1
+ export type StepType = "build" | "test" | "deploy" | "script" | "docker" | "notify" | "approval" | "artifact" | "cache" | "parallel";
2
+ export type StepStatus = "pending" | "running" | "success" | "failed" | "skipped" | "waiting";
3
+ export interface PipelineStep {
4
+ id: string;
5
+ name: string;
6
+ type: StepType;
7
+ status?: StepStatus;
8
+ command?: string;
9
+ image?: string;
10
+ environment?: Record<string, string>;
11
+ artifacts?: string[];
12
+ dependsOn?: string[];
13
+ timeout?: number;
14
+ retries?: number;
15
+ condition?: string;
16
+ parallel?: PipelineStep[];
17
+ }
18
+ export interface PipelineStage {
19
+ id: string;
20
+ name: string;
21
+ steps: PipelineStep[];
22
+ status?: StepStatus;
23
+ runParallel?: boolean;
24
+ }
25
+ export interface Pipeline {
26
+ id: string;
27
+ name: string;
28
+ description?: string;
29
+ trigger?: {
30
+ branches?: string[];
31
+ events?: ("push" | "pull_request" | "tag" | "schedule")[];
32
+ schedule?: string;
33
+ };
34
+ stages: PipelineStage[];
35
+ variables?: Record<string, string>;
36
+ }
37
+ export interface CICDBuilderProps {
38
+ pipeline: Pipeline;
39
+ onPipelineChange?: (pipeline: Pipeline) => void;
40
+ onRun?: () => void;
41
+ onSave?: () => void;
42
+ onExport?: (format: "yaml" | "json") => void;
43
+ readOnly?: boolean;
44
+ className?: string;
45
+ }
46
+ export declare function CICDBuilder({ pipeline: initialPipeline, onPipelineChange, onRun, onSave, onExport, readOnly, className, }: CICDBuilderProps): import("react/jsx-runtime").JSX.Element;
47
+ export declare const defaultPipeline: Pipeline;
@@ -0,0 +1,49 @@
1
+ export type CloudProvider = "aws" | "gcp" | "azure" | "all";
2
+ export type CostCategory = "compute" | "storage" | "database" | "network" | "security" | "other";
3
+ export type TimeRange = "day" | "week" | "month" | "quarter" | "year";
4
+ export interface CostItem {
5
+ id: string;
6
+ name: string;
7
+ category: CostCategory;
8
+ provider: CloudProvider;
9
+ cost: number;
10
+ previousCost?: number;
11
+ budget?: number;
12
+ usage?: number;
13
+ unit?: string;
14
+ trend?: number;
15
+ tags?: string[];
16
+ }
17
+ export interface CostSummary {
18
+ totalCost: number;
19
+ previousTotalCost?: number;
20
+ budget?: number;
21
+ forecast?: number;
22
+ byProvider: Record<CloudProvider, number>;
23
+ byCategory: Record<CostCategory, number>;
24
+ topServices: CostItem[];
25
+ }
26
+ export interface CostAnomaly {
27
+ id: string;
28
+ service: string;
29
+ expectedCost: number;
30
+ actualCost: number;
31
+ deviation: number;
32
+ timestamp: Date;
33
+ status: "new" | "acknowledged" | "resolved";
34
+ }
35
+ export interface CloudCostDashboardProps {
36
+ summary: CostSummary;
37
+ items: CostItem[];
38
+ anomalies?: CostAnomaly[];
39
+ timeRange?: TimeRange;
40
+ onTimeRangeChange?: (range: TimeRange) => void;
41
+ onProviderFilter?: (provider: CloudProvider) => void;
42
+ onExport?: () => void;
43
+ onRefresh?: () => void;
44
+ className?: string;
45
+ }
46
+ export declare function CloudCostDashboard({ summary, items, anomalies, timeRange, onTimeRangeChange, onProviderFilter, onExport, onRefresh, className, }: CloudCostDashboardProps): import("react/jsx-runtime").JSX.Element;
47
+ export declare const defaultCloudCostSummary: CostSummary;
48
+ export declare const defaultCloudCostItems: CostItem[];
49
+ export declare const defaultCostAnomalies: CostAnomaly[];
@@ -0,0 +1,63 @@
1
+ export type ContainerStatus = "running" | "stopped" | "paused" | "restarting" | "creating" | "removing" | "exited" | "dead";
2
+ export type ServiceStatus = "running" | "updating" | "scaled" | "failed" | "pending";
3
+ export interface ContainerResource {
4
+ cpu: number;
5
+ memory: number;
6
+ memoryLimit: number;
7
+ networkRx: number;
8
+ networkTx: number;
9
+ }
10
+ export interface OrchestratorContainer {
11
+ id: string;
12
+ name: string;
13
+ image: string;
14
+ status: ContainerStatus;
15
+ createdAt: Date;
16
+ startedAt?: Date;
17
+ ports?: {
18
+ host: number;
19
+ container: number;
20
+ protocol: "tcp" | "udp";
21
+ }[];
22
+ resources: ContainerResource;
23
+ healthCheck?: "healthy" | "unhealthy" | "starting" | "none";
24
+ restartCount?: number;
25
+ node?: string;
26
+ }
27
+ export interface OrchestratorService {
28
+ id: string;
29
+ name: string;
30
+ image: string;
31
+ status: ServiceStatus;
32
+ replicas: {
33
+ desired: number;
34
+ running: number;
35
+ ready: number;
36
+ };
37
+ containers: OrchestratorContainer[];
38
+ updateStatus?: {
39
+ state: "updating" | "completed" | "paused" | "rollback";
40
+ progress: number;
41
+ message?: string;
42
+ };
43
+ ports?: {
44
+ published: number;
45
+ target: number;
46
+ }[];
47
+ labels?: Record<string, string>;
48
+ createdAt: Date;
49
+ updatedAt: Date;
50
+ }
51
+ export interface ContainerOrchestratorProps {
52
+ services: OrchestratorService[];
53
+ onScaleService?: (service: OrchestratorService, replicas: number) => void;
54
+ onRestartService?: (service: OrchestratorService) => void;
55
+ onStopService?: (service: OrchestratorService) => void;
56
+ onDeleteService?: (service: OrchestratorService) => void;
57
+ onViewLogs?: (container: OrchestratorContainer) => void;
58
+ onExecShell?: (container: OrchestratorContainer) => void;
59
+ onRefresh?: () => void;
60
+ className?: string;
61
+ }
62
+ export declare function ContainerOrchestrator({ services, onScaleService, onRestartService, onStopService, onDeleteService, onViewLogs, onExecShell, onRefresh, className, }: ContainerOrchestratorProps): import("react/jsx-runtime").JSX.Element;
63
+ export declare const defaultOrchestratorServices: OrchestratorService[];
@@ -0,0 +1,69 @@
1
+ import * as React from "react";
2
+ export interface KPIMetric {
3
+ id: string;
4
+ label: string;
5
+ value: string | number;
6
+ previousValue?: string | number;
7
+ change?: number;
8
+ changeLabel?: string;
9
+ trend?: "up" | "down" | "neutral";
10
+ icon?: React.ReactNode;
11
+ color?: "default" | "blue" | "green" | "yellow" | "red" | "purple";
12
+ sparkline?: number[];
13
+ target?: number;
14
+ current?: number;
15
+ }
16
+ export interface KPIChartData {
17
+ label: string;
18
+ value: number;
19
+ color?: string;
20
+ }
21
+ export interface DashboardKPIProps {
22
+ /** Title of the dashboard */
23
+ title?: string;
24
+ /** Description */
25
+ description?: string;
26
+ /** Main KPI metrics */
27
+ metrics: KPIMetric[];
28
+ /** Period selector options */
29
+ periods?: {
30
+ value: string;
31
+ label: string;
32
+ }[];
33
+ /** Selected period */
34
+ selectedPeriod?: string;
35
+ /** Period change handler */
36
+ onPeriodChange?: (period: string) => void;
37
+ /** Refresh handler */
38
+ onRefresh?: () => void;
39
+ /** Export handler */
40
+ onExport?: () => void;
41
+ /** Custom chart component */
42
+ chart?: React.ReactNode;
43
+ /** Secondary metrics for the bottom section */
44
+ secondaryMetrics?: KPIMetric[];
45
+ /** Goals/targets section */
46
+ goals?: {
47
+ id: string;
48
+ label: string;
49
+ current: number;
50
+ target: number;
51
+ unit?: string;
52
+ }[];
53
+ /** Loading state */
54
+ isLoading?: boolean;
55
+ /** Last updated timestamp */
56
+ lastUpdated?: string | Date;
57
+ /** Custom className */
58
+ className?: string;
59
+ }
60
+ export declare function DashboardKPI({ title, description, metrics, periods, selectedPeriod, onPeriodChange, onRefresh, onExport, chart, secondaryMetrics, goals, isLoading, lastUpdated, className, }: DashboardKPIProps): import("react/jsx-runtime").JSX.Element;
61
+ export declare const defaultKPIMetrics: KPIMetric[];
62
+ export declare const defaultGoals: {
63
+ id: string;
64
+ label: string;
65
+ current: number;
66
+ target: number;
67
+ unit: string;
68
+ }[];
69
+ export default DashboardKPI;
@@ -0,0 +1,84 @@
1
+ export type DatabaseStatus = "healthy" | "warning" | "critical" | "offline";
2
+ export type BackupStatus = "completed" | "running" | "failed" | "scheduled";
3
+ export type QueryStatus = "success" | "error" | "running";
4
+ export interface DatabaseConnection {
5
+ id: string;
6
+ user: string;
7
+ database: string;
8
+ state: "active" | "idle" | "idle_in_transaction" | "waiting";
9
+ query?: string;
10
+ duration: number;
11
+ client: string;
12
+ }
13
+ export interface DatabaseBackup {
14
+ id: string;
15
+ name: string;
16
+ type: "full" | "incremental" | "point_in_time";
17
+ status: BackupStatus;
18
+ size?: number;
19
+ startedAt: Date;
20
+ completedAt?: Date;
21
+ duration?: number;
22
+ }
23
+ export interface SlowQuery {
24
+ id: string;
25
+ query: string;
26
+ calls: number;
27
+ totalTime: number;
28
+ meanTime: number;
29
+ maxTime: number;
30
+ rows: number;
31
+ }
32
+ export interface DatabaseMetrics {
33
+ connections: {
34
+ active: number;
35
+ idle: number;
36
+ max: number;
37
+ };
38
+ transactions: {
39
+ committed: number;
40
+ rolledBack: number;
41
+ perSecond: number;
42
+ };
43
+ cache: {
44
+ hitRatio: number;
45
+ bufferHit: number;
46
+ diskRead: number;
47
+ };
48
+ storage: {
49
+ used: number;
50
+ total: number;
51
+ tablespace: number;
52
+ indexes: number;
53
+ };
54
+ replication?: {
55
+ lag: number;
56
+ state: "streaming" | "catchup" | "disconnected";
57
+ replicas: number;
58
+ };
59
+ }
60
+ export interface DatabaseInstance {
61
+ id: string;
62
+ name: string;
63
+ type: "postgresql" | "mysql" | "mongodb" | "redis";
64
+ version: string;
65
+ host: string;
66
+ port: number;
67
+ status: DatabaseStatus;
68
+ role: "primary" | "replica" | "standalone";
69
+ metrics: DatabaseMetrics;
70
+ connections: DatabaseConnection[];
71
+ backups: DatabaseBackup[];
72
+ slowQueries: SlowQuery[];
73
+ }
74
+ export interface DatabaseAdminProps {
75
+ instance: DatabaseInstance;
76
+ onExecuteQuery?: (query: string) => void;
77
+ onCreateBackup?: () => void;
78
+ onRestoreBackup?: (backup: DatabaseBackup) => void;
79
+ onKillConnection?: (connection: DatabaseConnection) => void;
80
+ onRefresh?: () => void;
81
+ className?: string;
82
+ }
83
+ export declare function DatabaseAdmin({ instance, onExecuteQuery, onCreateBackup, onRestoreBackup, onKillConnection, onRefresh, className, }: DatabaseAdminProps): import("react/jsx-runtime").JSX.Element;
84
+ export declare const defaultDatabaseInstance: DatabaseInstance;
@@ -0,0 +1,68 @@
1
+ export type DeploymentStatus = "pending" | "building" | "deploying" | "success" | "failed" | "cancelled" | "rollback";
2
+ export type Environment = "development" | "staging" | "production";
3
+ export interface Deployment {
4
+ id: string;
5
+ status: DeploymentStatus;
6
+ environment: Environment;
7
+ branch: string;
8
+ commit: string;
9
+ commitMessage: string;
10
+ author: {
11
+ name: string;
12
+ avatar?: string;
13
+ };
14
+ startedAt: Date | string;
15
+ finishedAt?: Date | string;
16
+ duration?: string;
17
+ url?: string;
18
+ logs?: string[];
19
+ }
20
+ export interface Pipeline {
21
+ id: string;
22
+ name: string;
23
+ status: DeploymentStatus;
24
+ stages: PipelineStage[];
25
+ trigger: string;
26
+ branch: string;
27
+ startedAt: Date | string;
28
+ }
29
+ export interface PipelineStage {
30
+ id: string;
31
+ name: string;
32
+ status: DeploymentStatus;
33
+ duration?: string;
34
+ logs?: string[];
35
+ }
36
+ export interface EnvironmentStatus {
37
+ name: Environment;
38
+ status: "healthy" | "degraded" | "down";
39
+ url: string;
40
+ lastDeployment?: Deployment;
41
+ uptime?: string;
42
+ responseTime?: string;
43
+ }
44
+ export interface DeploymentDashboardProps {
45
+ /** Recent deployments */
46
+ deployments?: Deployment[];
47
+ /** Active pipelines */
48
+ pipelines?: Pipeline[];
49
+ /** Environment statuses */
50
+ environments?: EnvironmentStatus[];
51
+ /** Handler for deploying */
52
+ onDeploy?: (environment: Environment, branch: string) => void;
53
+ /** Handler for rollback */
54
+ onRollback?: (deploymentId: string) => void;
55
+ /** Handler for cancelling */
56
+ onCancel?: (deploymentId: string) => void;
57
+ /** Handler for retrying */
58
+ onRetry?: (deploymentId: string) => void;
59
+ /** Available branches */
60
+ branches?: string[];
61
+ /** Custom className */
62
+ className?: string;
63
+ }
64
+ export declare function DeploymentDashboard({ deployments, pipelines, environments, onDeploy, onRollback, onCancel, onRetry, branches, className, }: DeploymentDashboardProps): import("react/jsx-runtime").JSX.Element;
65
+ export declare const defaultDeployments: Deployment[];
66
+ export declare const defaultPipelines: Pipeline[];
67
+ export declare const defaultEnvironments: EnvironmentStatus[];
68
+ export default DeploymentDashboard;
@@ -0,0 +1,45 @@
1
+ export type SyncStatus = "synced" | "out_of_sync" | "syncing" | "failed" | "unknown" | "suspended";
2
+ export type HealthStatus = "healthy" | "degraded" | "progressing" | "missing" | "unknown";
3
+ export type ResourceKind = "Deployment" | "Service" | "ConfigMap" | "Secret" | "Ingress" | "PersistentVolumeClaim" | "CronJob" | "Job" | "StatefulSet" | "DaemonSet";
4
+ export interface GitOpsResource {
5
+ kind: ResourceKind;
6
+ name: string;
7
+ namespace: string;
8
+ syncStatus: SyncStatus;
9
+ healthStatus: HealthStatus;
10
+ message?: string;
11
+ version?: string;
12
+ }
13
+ export interface GitOpsApplication {
14
+ id: string;
15
+ name: string;
16
+ project: string;
17
+ repo: {
18
+ url: string;
19
+ branch: string;
20
+ path: string;
21
+ };
22
+ destination: {
23
+ server: string;
24
+ namespace: string;
25
+ };
26
+ syncStatus: SyncStatus;
27
+ healthStatus: HealthStatus;
28
+ lastSyncedAt?: Date;
29
+ lastSyncedRevision?: string;
30
+ targetRevision?: string;
31
+ resources: GitOpsResource[];
32
+ message?: string;
33
+ autoSync?: boolean;
34
+ }
35
+ export interface GitOpsSyncStatusProps {
36
+ applications: GitOpsApplication[];
37
+ onSync?: (app: GitOpsApplication) => void;
38
+ onRefresh?: () => void;
39
+ onSuspend?: (app: GitOpsApplication) => void;
40
+ onResume?: (app: GitOpsApplication) => void;
41
+ onViewDetails?: (app: GitOpsApplication) => void;
42
+ className?: string;
43
+ }
44
+ export declare function GitOpsSyncStatus({ applications, onSync, onRefresh, onSuspend, onResume, onViewDetails, className, }: GitOpsSyncStatusProps): import("react/jsx-runtime").JSX.Element;
45
+ export declare const defaultGitOpsApplications: GitOpsApplication[];