@wakastellar/ui 2.1.2 → 2.3.2
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/blocks/apm-overview/index.d.ts +58 -0
- package/dist/blocks/cicd-builder/index.d.ts +47 -0
- package/dist/blocks/cloud-cost-dashboard/index.d.ts +49 -0
- package/dist/blocks/container-orchestrator/index.d.ts +63 -0
- package/dist/blocks/database-admin/index.d.ts +84 -0
- package/dist/blocks/gitops-sync-status/index.d.ts +45 -0
- package/dist/blocks/incident-manager/index.d.ts +44 -0
- package/dist/blocks/index.d.ts +10 -0
- package/dist/blocks/infrastructure-map/index.d.ts +32 -0
- package/dist/blocks/on-call-schedule/index.d.ts +43 -0
- package/dist/blocks/release-notes/index.d.ts +49 -0
- package/dist/components/index.d.ts +34 -0
- package/dist/components/waka-ad-banner/index.d.ts +36 -0
- package/dist/components/waka-ad-fallback/index.d.ts +33 -0
- package/dist/components/waka-ad-inline/index.d.ts +15 -0
- package/dist/components/waka-ad-interstitial/index.d.ts +26 -0
- package/dist/components/waka-ad-placeholder/index.d.ts +17 -0
- package/dist/components/waka-ad-provider/index.d.ts +103 -0
- package/dist/components/waka-ad-sidebar/index.d.ts +18 -0
- package/dist/components/waka-ad-sticky-footer/index.d.ts +17 -0
- package/dist/components/waka-alert-panel/index.d.ts +45 -0
- package/dist/components/waka-artifact-list/index.d.ts +32 -0
- package/dist/components/waka-build-matrix/index.d.ts +36 -0
- package/dist/components/waka-config-comparator/index.d.ts +37 -0
- package/dist/components/waka-container-list/index.d.ts +51 -0
- package/dist/components/waka-content-recommendation/index.d.ts +23 -0
- package/dist/components/waka-database-card/index.d.ts +46 -0
- package/dist/components/waka-dependency-tree/index.d.ts +38 -0
- package/dist/components/waka-env-var-editor/index.d.ts +30 -0
- package/dist/components/waka-feature-flag-row/index.d.ts +45 -0
- package/dist/components/waka-kubernetes-overview/index.d.ts +98 -0
- package/dist/components/waka-log-viewer/index.d.ts +38 -0
- package/dist/components/waka-migration-list/index.d.ts +36 -0
- package/dist/components/waka-outstream-video/index.d.ts +24 -0
- package/dist/components/waka-pod-card/index.d.ts +73 -0
- package/dist/components/waka-query-explain/index.d.ts +48 -0
- package/dist/components/waka-secret-card/index.d.ts +43 -0
- package/dist/components/waka-security-scan-result/index.d.ts +45 -0
- package/dist/components/waka-service-graph/index.d.ts +44 -0
- package/dist/components/waka-sponsored-badge/index.d.ts +20 -0
- package/dist/components/waka-sponsored-card/index.d.ts +25 -0
- package/dist/components/waka-sponsored-feed/index.d.ts +31 -0
- package/dist/components/waka-test-report/index.d.ts +60 -0
- package/dist/components/waka-trace-viewer/index.d.ts +36 -0
- package/dist/components/waka-video-ad/index.d.ts +32 -0
- package/dist/components/waka-video-overlay/index.d.ts +26 -0
- package/dist/index.cjs.js +251 -200
- package/dist/index.d.ts +1 -0
- package/dist/index.es.js +47315 -35823
- package/dist/utils/security.d.ts +96 -0
- package/package.json +4 -4
- package/src/blocks/apm-overview/index.tsx +672 -0
- package/src/blocks/cicd-builder/index.tsx +738 -0
- package/src/blocks/cloud-cost-dashboard/index.tsx +597 -0
- package/src/blocks/container-orchestrator/index.tsx +729 -0
- package/src/blocks/database-admin/index.tsx +679 -0
- package/src/blocks/gitops-sync-status/index.tsx +557 -0
- package/src/blocks/incident-manager/index.tsx +586 -0
- package/src/blocks/index.ts +119 -0
- package/src/blocks/infrastructure-map/index.tsx +638 -0
- package/src/blocks/on-call-schedule/index.tsx +615 -0
- package/src/blocks/release-notes/index.tsx +643 -0
- package/src/blocks/sidebar/index.tsx +6 -6
- package/src/components/DataTable/templates/index.tsx +3 -2
- package/src/components/index.ts +283 -0
- package/src/components/waka-3d-pie-chart/index.tsx +11 -11
- package/src/components/waka-achievement-unlock/index.tsx +16 -16
- package/src/components/waka-ad-banner/index.tsx +275 -0
- package/src/components/waka-ad-fallback/index.tsx +181 -0
- package/src/components/waka-ad-inline/index.tsx +103 -0
- package/src/components/waka-ad-interstitial/index.tsx +278 -0
- package/src/components/waka-ad-placeholder/index.tsx +84 -0
- package/src/components/waka-ad-provider/index.tsx +329 -0
- package/src/components/waka-ad-sidebar/index.tsx +113 -0
- package/src/components/waka-ad-sticky-footer/index.tsx +125 -0
- package/src/components/waka-alert-panel/index.tsx +493 -0
- package/src/components/waka-artifact-list/index.tsx +416 -0
- package/src/components/waka-badge-showcase/index.tsx +12 -11
- package/src/components/waka-build-matrix/index.tsx +396 -0
- package/src/components/waka-command-bar/index.tsx +2 -1
- package/src/components/waka-config-comparator/index.tsx +416 -0
- package/src/components/waka-container-list/index.tsx +475 -0
- package/src/components/waka-content-recommendation/index.tsx +294 -0
- package/src/components/waka-cost-breakdown/index.tsx +10 -10
- package/src/components/waka-database-card/index.tsx +473 -0
- package/src/components/waka-dependency-tree/index.tsx +542 -0
- package/src/components/waka-env-var-editor/index.tsx +417 -0
- package/src/components/waka-feature-flag-row/index.tsx +386 -0
- package/src/components/waka-funnel-chart/index.tsx +8 -8
- package/src/components/waka-health-pulse/index.tsx +6 -6
- package/src/components/waka-kubernetes-overview/index.tsx +536 -0
- package/src/components/waka-leaderboard/index.tsx +9 -9
- package/src/components/waka-log-viewer/index.tsx +386 -0
- package/src/components/waka-loot-box/index.tsx +20 -20
- package/src/components/waka-migration-list/index.tsx +487 -0
- package/src/components/waka-outstream-video/index.tsx +240 -0
- package/src/components/waka-player-card/index.tsx +5 -5
- package/src/components/waka-pod-card/index.tsx +528 -0
- package/src/components/waka-query-explain/index.tsx +657 -0
- package/src/components/waka-quota-bar/index.tsx +4 -4
- package/src/components/waka-radar-score/index.tsx +10 -10
- package/src/components/waka-scratch-card/index.tsx +5 -4
- package/src/components/waka-secret-card/index.tsx +371 -0
- package/src/components/waka-security-scan-result/index.tsx +473 -0
- package/src/components/waka-server-rack/index.tsx +28 -27
- package/src/components/waka-service-graph/index.tsx +445 -0
- package/src/components/waka-sponsored-badge/index.tsx +97 -0
- package/src/components/waka-sponsored-card/index.tsx +275 -0
- package/src/components/waka-sponsored-feed/index.tsx +127 -0
- package/src/components/waka-spotlight/index.tsx +2 -1
- package/src/components/waka-success-explosion/index.tsx +4 -4
- package/src/components/waka-test-report/index.tsx +469 -0
- package/src/components/waka-trace-viewer/index.tsx +490 -0
- package/src/components/waka-video-ad/index.tsx +406 -0
- package/src/components/waka-video-overlay/index.tsx +257 -0
- package/src/components/waka-xp-bar/index.tsx +13 -13
- package/src/styles/base.css +16 -0
- package/src/styles/tailwind.preset.js +12 -0
- package/src/styles/themes/forest.css +16 -0
- package/src/styles/themes/monochrome.css +16 -0
- package/src/styles/themes/perpetuity.css +16 -0
- package/src/styles/themes/sunset.css +16 -0
- package/src/styles/themes/twilight.css +16 -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,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,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,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[];
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export type IncidentSeverity = "critical" | "high" | "medium" | "low";
|
|
2
|
+
export type IncidentStatus = "triggered" | "acknowledged" | "investigating" | "identified" | "resolved" | "closed";
|
|
3
|
+
export interface IncidentResponder {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
avatar?: string;
|
|
7
|
+
role: string;
|
|
8
|
+
status: "available" | "engaged" | "offline";
|
|
9
|
+
}
|
|
10
|
+
export interface IncidentEvent {
|
|
11
|
+
id: string;
|
|
12
|
+
type: "status_change" | "comment" | "assignment" | "escalation" | "runbook";
|
|
13
|
+
timestamp: Date;
|
|
14
|
+
user?: string;
|
|
15
|
+
content: string;
|
|
16
|
+
}
|
|
17
|
+
export interface Incident {
|
|
18
|
+
id: string;
|
|
19
|
+
title: string;
|
|
20
|
+
description?: string;
|
|
21
|
+
severity: IncidentSeverity;
|
|
22
|
+
status: IncidentStatus;
|
|
23
|
+
service?: string;
|
|
24
|
+
createdAt: Date;
|
|
25
|
+
acknowledgedAt?: Date;
|
|
26
|
+
resolvedAt?: Date;
|
|
27
|
+
responders: IncidentResponder[];
|
|
28
|
+
events: IncidentEvent[];
|
|
29
|
+
impact?: string;
|
|
30
|
+
affectedUsers?: number;
|
|
31
|
+
slackChannel?: string;
|
|
32
|
+
runbookUrl?: string;
|
|
33
|
+
}
|
|
34
|
+
export interface IncidentManagerProps {
|
|
35
|
+
incidents: Incident[];
|
|
36
|
+
onCreateIncident?: () => void;
|
|
37
|
+
onAcknowledge?: (incident: Incident) => void;
|
|
38
|
+
onResolve?: (incident: Incident) => void;
|
|
39
|
+
onEscalate?: (incident: Incident) => void;
|
|
40
|
+
onAssign?: (incident: Incident, responder: IncidentResponder) => void;
|
|
41
|
+
className?: string;
|
|
42
|
+
}
|
|
43
|
+
export declare function IncidentManager({ incidents, onCreateIncident, onAcknowledge, onResolve, onEscalate, onAssign, className, }: IncidentManagerProps): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
export declare const defaultIncidents: Incident[];
|
package/dist/blocks/index.d.ts
CHANGED
|
@@ -37,3 +37,13 @@ export * from './auth-2fa';
|
|
|
37
37
|
export { ChatInterface, defaultUsers as defaultChatInterfaceUsers, defaultConversations as defaultChatInterfaceConversations, defaultMessages as defaultChatInterfaceMessages, } from './chat-interface';
|
|
38
38
|
export type { ChatInterfaceProps, ChatUser as ChatInterfaceUser, ChatMessage as ChatInterfaceMessage, ChatConversation as ChatInterfaceConversation, ChatAttachment as ChatInterfaceAttachment, ChatReaction as ChatInterfaceReaction, } from './chat-interface';
|
|
39
39
|
export * from './deployment-dashboard';
|
|
40
|
+
export { IncidentManager, defaultIncidents, type Incident, type IncidentSeverity, type IncidentStatus, type IncidentResponder, type IncidentEvent, type IncidentManagerProps, } from './incident-manager';
|
|
41
|
+
export { InfrastructureMap, defaultInfraResources, type InfraResource, type ResourceType as InfraResourceType, type ResourceStatus as InfraResourceStatus, type CloudProvider as InfraCloudProvider, type InfrastructureMapProps, } from './infrastructure-map';
|
|
42
|
+
export { CICDBuilder, defaultPipeline, type Pipeline as CICDPipeline, type PipelineStage as CICDPipelineStage, type PipelineStep, type StepType, type StepStatus, type CICDBuilderProps, } from './cicd-builder';
|
|
43
|
+
export { ReleaseNotes, defaultReleases, type Release, type ReleaseType, type ReleaseStatus, type ChangeItem, type ChangeType, type Contributor, type ReleaseNotesProps, } from './release-notes';
|
|
44
|
+
export { OnCallScheduleBlock, defaultOnCallSchedule, type OnCallSchedule, type OnCallShift, type OnCallUser, type RotationType, type EscalationLevel, type OnCallScheduleBlockProps, } from './on-call-schedule';
|
|
45
|
+
export { CloudCostDashboard, defaultCloudCostSummary, defaultCloudCostItems, defaultCostAnomalies, type CostSummary, type CostItem, type CostAnomaly, type CostCategory, type CloudProvider as CostCloudProvider, type TimeRange as CostTimeRange, type CloudCostDashboardProps, } from './cloud-cost-dashboard';
|
|
46
|
+
export { GitOpsSyncStatus, defaultGitOpsApplications, type GitOpsApplication, type GitOpsResource, type SyncStatus, type HealthStatus as GitOpsHealthStatus, type ResourceKind, type GitOpsSyncStatusProps, } from './gitops-sync-status';
|
|
47
|
+
export { APMOverview, defaultAPMServices, defaultAPMTransactions, type APMService, type APMTransaction, type ServiceMetrics as APMServiceMetrics, type ServiceEndpoint as APMServiceEndpoint, type ServiceStatus as APMServiceStatus, type TimeRange as APMTimeRange, type APMOverviewProps, } from './apm-overview';
|
|
48
|
+
export { ContainerOrchestrator, defaultOrchestratorServices, type OrchestratorService, type OrchestratorContainer, type ContainerStatus as OrchestratorContainerStatus, type ServiceStatus as OrchestratorServiceStatus, type ContainerResource, type ContainerOrchestratorProps, } from './container-orchestrator';
|
|
49
|
+
export { DatabaseAdmin, defaultDatabaseInstance, type DatabaseInstance, type DatabaseConnection, type DatabaseBackup, type SlowQuery, type DatabaseMetrics as AdminDatabaseMetrics, type DatabaseStatus as AdminDatabaseStatus, type BackupStatus, type QueryStatus, type DatabaseAdminProps, } from './database-admin';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export type ResourceType = "region" | "vpc" | "subnet" | "server" | "database" | "loadbalancer" | "cache" | "storage" | "container" | "function" | "cdn" | "firewall";
|
|
2
|
+
export type ResourceStatus = "healthy" | "warning" | "critical" | "unknown" | "maintenance";
|
|
3
|
+
export type CloudProvider = "aws" | "gcp" | "azure" | "custom";
|
|
4
|
+
export interface InfraResource {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
type: ResourceType;
|
|
8
|
+
status: ResourceStatus;
|
|
9
|
+
provider?: CloudProvider;
|
|
10
|
+
region?: string;
|
|
11
|
+
metadata?: Record<string, string | number>;
|
|
12
|
+
children?: InfraResource[];
|
|
13
|
+
connections?: string[];
|
|
14
|
+
metrics?: {
|
|
15
|
+
cpu?: number;
|
|
16
|
+
memory?: number;
|
|
17
|
+
network?: number;
|
|
18
|
+
requests?: number;
|
|
19
|
+
latency?: number;
|
|
20
|
+
errors?: number;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export interface InfrastructureMapProps {
|
|
24
|
+
resources: InfraResource[];
|
|
25
|
+
onResourceClick?: (resource: InfraResource) => void;
|
|
26
|
+
onRefresh?: () => void;
|
|
27
|
+
showConnections?: boolean;
|
|
28
|
+
viewMode?: "tree" | "grid" | "topology";
|
|
29
|
+
className?: string;
|
|
30
|
+
}
|
|
31
|
+
export declare function InfrastructureMap({ resources, onResourceClick, onRefresh, showConnections, viewMode: initialViewMode, className, }: InfrastructureMapProps): import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
export declare const defaultInfraResources: InfraResource[];
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export type RotationType = "daily" | "weekly" | "biweekly" | "monthly" | "custom";
|
|
2
|
+
export type EscalationLevel = 1 | 2 | 3;
|
|
3
|
+
export interface OnCallUser {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
email: string;
|
|
7
|
+
phone?: string;
|
|
8
|
+
avatar?: string;
|
|
9
|
+
timezone?: string;
|
|
10
|
+
status?: "available" | "busy" | "dnd" | "offline";
|
|
11
|
+
}
|
|
12
|
+
export interface OnCallShift {
|
|
13
|
+
id: string;
|
|
14
|
+
user: OnCallUser;
|
|
15
|
+
startTime: Date;
|
|
16
|
+
endTime: Date;
|
|
17
|
+
level: EscalationLevel;
|
|
18
|
+
overrideReason?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface OnCallSchedule {
|
|
21
|
+
id: string;
|
|
22
|
+
name: string;
|
|
23
|
+
description?: string;
|
|
24
|
+
team: string;
|
|
25
|
+
rotation: RotationType;
|
|
26
|
+
escalationPolicy: {
|
|
27
|
+
level1Timeout: number;
|
|
28
|
+
level2Timeout: number;
|
|
29
|
+
level3Timeout: number;
|
|
30
|
+
};
|
|
31
|
+
shifts: OnCallShift[];
|
|
32
|
+
users: OnCallUser[];
|
|
33
|
+
}
|
|
34
|
+
export interface OnCallScheduleBlockProps {
|
|
35
|
+
schedule: OnCallSchedule;
|
|
36
|
+
onEditSchedule?: () => void;
|
|
37
|
+
onAddOverride?: (date: Date) => void;
|
|
38
|
+
onSwapShift?: (shift: OnCallShift) => void;
|
|
39
|
+
onContactOnCall?: (user: OnCallUser) => void;
|
|
40
|
+
className?: string;
|
|
41
|
+
}
|
|
42
|
+
export declare function OnCallScheduleBlock({ schedule, onEditSchedule, onAddOverride, onSwapShift, onContactOnCall, className, }: OnCallScheduleBlockProps): import("react/jsx-runtime").JSX.Element;
|
|
43
|
+
export declare const defaultOnCallSchedule: OnCallSchedule;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export type ChangeType = "feature" | "fix" | "improvement" | "breaking" | "security" | "performance" | "docs" | "deprecation";
|
|
2
|
+
export type ReleaseType = "major" | "minor" | "patch" | "prerelease";
|
|
3
|
+
export type ReleaseStatus = "draft" | "published" | "scheduled";
|
|
4
|
+
export interface Contributor {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
username: string;
|
|
8
|
+
avatar?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface ChangeItem {
|
|
11
|
+
id: string;
|
|
12
|
+
type: ChangeType;
|
|
13
|
+
title: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
pullRequest?: {
|
|
16
|
+
number: number;
|
|
17
|
+
url: string;
|
|
18
|
+
};
|
|
19
|
+
commits?: string[];
|
|
20
|
+
contributors?: Contributor[];
|
|
21
|
+
breaking?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface Release {
|
|
24
|
+
id: string;
|
|
25
|
+
version: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
releaseType: ReleaseType;
|
|
28
|
+
status: ReleaseStatus;
|
|
29
|
+
publishedAt?: Date;
|
|
30
|
+
scheduledAt?: Date;
|
|
31
|
+
createdAt: Date;
|
|
32
|
+
changes: ChangeItem[];
|
|
33
|
+
summary?: string;
|
|
34
|
+
upgradeNotes?: string;
|
|
35
|
+
contributors: Contributor[];
|
|
36
|
+
compareUrl?: string;
|
|
37
|
+
downloadUrl?: string;
|
|
38
|
+
}
|
|
39
|
+
export interface ReleaseNotesProps {
|
|
40
|
+
releases: Release[];
|
|
41
|
+
onCreateRelease?: () => void;
|
|
42
|
+
onEditRelease?: (release: Release) => void;
|
|
43
|
+
onPublishRelease?: (release: Release) => void;
|
|
44
|
+
onAddChange?: (releaseId: string, change: ChangeItem) => void;
|
|
45
|
+
showEditor?: boolean;
|
|
46
|
+
className?: string;
|
|
47
|
+
}
|
|
48
|
+
export declare function ReleaseNotes({ releases, onCreateRelease, onEditRelease, onPublishRelease, onAddChange, showEditor, className, }: ReleaseNotesProps): import("react/jsx-runtime").JSX.Element;
|
|
49
|
+
export declare const defaultReleases: Release[];
|
|
@@ -196,3 +196,37 @@ export { WakaEmptyState, WakaEmptyStateSearch, WakaEmptyStateError, useEmptyStat
|
|
|
196
196
|
export * from './waka-feature-announcement';
|
|
197
197
|
export * from './waka-progress-onboarding';
|
|
198
198
|
export { WakaTooltipTour, useTooltipTour, type WakaTooltipTourProps, type TourStep as TooltipTourStep, type TooltipPlacement, type UseTooltipTourOptions, type UseTooltipTourReturn, } from './waka-tooltip-tour';
|
|
199
|
+
export { WakaLogViewer, defaultLogs, type LogEntry, type LogLevel as WakaLogLevel, type WakaLogViewerProps, } from './waka-log-viewer';
|
|
200
|
+
export { WakaTraceViewer, defaultTraceSpans, type TraceSpan, type SpanStatus, type WakaTraceViewerProps, } from './waka-trace-viewer';
|
|
201
|
+
export { WakaAlertPanel, defaultAlerts as defaultPanelAlerts, type Alert as WakaPanelAlert, type AlertSeverity as WakaPanelAlertSeverity, type AlertStatus as WakaPanelAlertStatus, type WakaAlertPanelProps, } from './waka-alert-panel';
|
|
202
|
+
export { WakaContainerList, defaultContainers, type Container, type ContainerStatus as WakaContainerStatus, type ContainerResource, type WakaContainerListProps, } from './waka-container-list';
|
|
203
|
+
export { WakaKubernetesOverview, defaultK8sNodes, defaultK8sPods, defaultK8sDeployments, defaultK8sServices, defaultK8sNamespaces, type K8sNode, type K8sPod, type K8sDeployment, type K8sService, type K8sNamespace, type NodeStatus as K8sNodeStatus, type PodPhase as K8sPodPhase, type DeploymentStatus as K8sDeploymentStatus, type WakaKubernetesOverviewProps, } from './waka-kubernetes-overview';
|
|
204
|
+
export { WakaPodCard, defaultPodDetails, type PodDetails, type PodContainer, type PodEvent, type PodPhase, type ContainerState, type WakaPodCardProps, } from './waka-pod-card';
|
|
205
|
+
export { WakaServiceGraph, defaultServices, defaultConnections, type ServiceNode, type ServiceConnection, type ServiceHealth, type ServiceType, type WakaServiceGraphProps, } from './waka-service-graph';
|
|
206
|
+
export { WakaBuildMatrix, defaultBuildMatrixColumns, defaultBuildMatrixRows, type BuildMatrixRow, type BuildCell, type BuildStatus as WakaBuildStatus, type WakaBuildMatrixProps, } from './waka-build-matrix';
|
|
207
|
+
export { WakaTestReport, defaultTestSuites, defaultCoverage, type TestSuite, type TestCase, type CoverageReport, type TestStatus, type WakaTestReportProps, } from './waka-test-report';
|
|
208
|
+
export { WakaArtifactList, defaultArtifacts, type Artifact, type WakaArtifactListProps, } from './waka-artifact-list';
|
|
209
|
+
export { WakaSecurityScanResult, defaultVulnerabilities, type Vulnerability, type VulnerabilitySeverity, type ScanType, type ScanSummary, type WakaSecurityScanResultProps, } from './waka-security-scan-result';
|
|
210
|
+
export { WakaDependencyTree, defaultDependencies, type Dependency, type DependencyType, type VulnSeverity as DependencyVulnSeverity, type WakaDependencyTreeProps, } from './waka-dependency-tree';
|
|
211
|
+
export { WakaEnvVarEditor, defaultEnvVariables, type EnvVariable, type WakaEnvVarEditorProps, } from './waka-env-var-editor';
|
|
212
|
+
export { WakaSecretCard, defaultSecret, type Secret, type SecretAccess, type WakaSecretCardProps, } from './waka-secret-card';
|
|
213
|
+
export { WakaConfigComparator, defaultConfigEnvironments, type ConfigEnvironment, type ConfigValue, type ConfigDiff, type DiffType, type WakaConfigComparatorProps, } from './waka-config-comparator';
|
|
214
|
+
export { WakaFeatureFlagRow, defaultFeatureFlags, type FeatureFlag, type FeatureFlagStatus, type FeatureFlagSegment, type WakaFeatureFlagRowProps, } from './waka-feature-flag-row';
|
|
215
|
+
export { WakaDatabaseCard, defaultDatabase, defaultDatabases, type DatabaseInfo, type DatabaseMetrics, type DatabaseType as WakaDatabaseType, type DatabaseStatus as WakaDatabaseStatus, type ReplicationRole, type WakaDatabaseCardProps, } from './waka-database-card';
|
|
216
|
+
export { WakaMigrationList, defaultMigrations, type Migration, type MigrationStatus, type WakaMigrationListProps, } from './waka-migration-list';
|
|
217
|
+
export { WakaQueryExplain, defaultQueryPlan, type QueryPlan, type ExplainNode, type NodeType, type WakaQueryExplainProps, } from './waka-query-explain';
|
|
218
|
+
export { WakaAdProvider, useAdContext, useAdVisibility, useAdConsent, useAdSlot, AD_SIZES, type AdNetwork, type AdSize, type AdPosition, type AdSlot, type AdConfig, type AdEvent, type CustomAd, } from './waka-ad-provider';
|
|
219
|
+
export { WakaAdBanner, type WakaAdBannerProps, } from './waka-ad-banner';
|
|
220
|
+
export { WakaAdPlaceholder, type WakaAdPlaceholderProps, } from './waka-ad-placeholder';
|
|
221
|
+
export { WakaAdFallback, type WakaAdFallbackProps, type AdFallbackVariant, } from './waka-ad-fallback';
|
|
222
|
+
export { WakaSponsoredBadge, type WakaSponsoredBadgeProps, type SponsoredBadgeVariant, type SponsoredBadgeSize, } from './waka-sponsored-badge';
|
|
223
|
+
export { WakaAdSidebar, type WakaAdSidebarProps, } from './waka-ad-sidebar';
|
|
224
|
+
export { WakaAdInline, type WakaAdInlineProps, } from './waka-ad-inline';
|
|
225
|
+
export { WakaAdInterstitial, type WakaAdInterstitialProps, } from './waka-ad-interstitial';
|
|
226
|
+
export { WakaAdStickyFooter, type WakaAdStickyFooterProps, } from './waka-ad-sticky-footer';
|
|
227
|
+
export { WakaSponsoredCard, type WakaSponsoredCardProps, type SponsoredCardVariant, } from './waka-sponsored-card';
|
|
228
|
+
export { WakaSponsoredFeed, type WakaSponsoredFeedProps, } from './waka-sponsored-feed';
|
|
229
|
+
export { WakaContentRecommendation, type WakaContentRecommendationProps, type RecommendationLayout, } from './waka-content-recommendation';
|
|
230
|
+
export { WakaVideoAd, type WakaVideoAdProps, } from './waka-video-ad';
|
|
231
|
+
export { WakaOutstreamVideo, type WakaOutstreamVideoProps, } from './waka-outstream-video';
|
|
232
|
+
export { WakaVideoOverlay, type WakaVideoOverlayProps, type OverlayPosition, type OverlayTrigger, } from './waka-video-overlay';
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { AdSize } from '../waka-ad-provider';
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
export interface WakaAdBannerProps {
|
|
4
|
+
/** Unique slot ID */
|
|
5
|
+
slotId: string;
|
|
6
|
+
/** Ad size preset */
|
|
7
|
+
size?: AdSize;
|
|
8
|
+
/** Custom width (when size is "custom") */
|
|
9
|
+
customWidth?: number;
|
|
10
|
+
/** Custom height (when size is "custom") */
|
|
11
|
+
customHeight?: number;
|
|
12
|
+
/** GPT ad unit path (for GPT network) */
|
|
13
|
+
adUnitPath?: string;
|
|
14
|
+
/** Targeting parameters */
|
|
15
|
+
targeting?: Record<string, string | string[]>;
|
|
16
|
+
/** Auto-refresh interval in seconds (0 = disabled) */
|
|
17
|
+
refreshInterval?: number;
|
|
18
|
+
/** Enable lazy loading */
|
|
19
|
+
lazyLoad?: boolean;
|
|
20
|
+
/** Fallback content when no ad available */
|
|
21
|
+
fallback?: React.ReactNode;
|
|
22
|
+
/** Show sponsored badge */
|
|
23
|
+
showBadge?: boolean;
|
|
24
|
+
/** Badge position */
|
|
25
|
+
badgePosition?: "top-left" | "top-right" | "bottom-left" | "bottom-right";
|
|
26
|
+
/** Custom class name */
|
|
27
|
+
className?: string;
|
|
28
|
+
/** Callback when ad loads */
|
|
29
|
+
onLoad?: () => void;
|
|
30
|
+
/** Callback when ad fails */
|
|
31
|
+
onError?: (error: Error) => void;
|
|
32
|
+
/** Callback when ad is clicked */
|
|
33
|
+
onClick?: () => void;
|
|
34
|
+
}
|
|
35
|
+
export declare function WakaAdBanner({ slotId, size, customWidth, customHeight, adUnitPath, targeting, refreshInterval, lazyLoad, fallback, showBadge, badgePosition, className, onLoad, onError, onClick, }: WakaAdBannerProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
export default WakaAdBanner;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { AdSize } from '../waka-ad-provider';
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
export type AdFallbackVariant = "house" | "empty" | "custom";
|
|
4
|
+
export interface WakaAdFallbackProps {
|
|
5
|
+
/** Fallback variant */
|
|
6
|
+
variant?: AdFallbackVariant;
|
|
7
|
+
/** Ad size preset */
|
|
8
|
+
size?: AdSize;
|
|
9
|
+
/** Width in pixels (overrides size) */
|
|
10
|
+
width?: number;
|
|
11
|
+
/** Height in pixels (overrides size) */
|
|
12
|
+
height?: number;
|
|
13
|
+
/** Title text */
|
|
14
|
+
title?: string;
|
|
15
|
+
/** Description text */
|
|
16
|
+
description?: string;
|
|
17
|
+
/** Call to action text */
|
|
18
|
+
ctaText?: string;
|
|
19
|
+
/** Link URL */
|
|
20
|
+
ctaUrl?: string;
|
|
21
|
+
/** Image URL */
|
|
22
|
+
imageUrl?: string;
|
|
23
|
+
/** Show border */
|
|
24
|
+
showBorder?: boolean;
|
|
25
|
+
/** Custom class name */
|
|
26
|
+
className?: string;
|
|
27
|
+
/** Callback when clicked */
|
|
28
|
+
onClick?: () => void;
|
|
29
|
+
/** Custom children for variant="custom" */
|
|
30
|
+
children?: React.ReactNode;
|
|
31
|
+
}
|
|
32
|
+
export declare function WakaAdFallback({ variant, size, width, height, title, description, ctaText, ctaUrl, imageUrl, showBorder, className, onClick, children, }: WakaAdFallbackProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
export default WakaAdFallback;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { WakaAdBannerProps } from '../waka-ad-banner';
|
|
2
|
+
export interface WakaAdInlineProps extends Omit<WakaAdBannerProps, "size"> {
|
|
3
|
+
/** Ad size - defaults to responsive */
|
|
4
|
+
size?: "responsive" | "rectangle" | "leaderboard";
|
|
5
|
+
/** Alignment within container */
|
|
6
|
+
align?: "left" | "center" | "right";
|
|
7
|
+
/** Vertical margin */
|
|
8
|
+
margin?: "none" | "sm" | "md" | "lg";
|
|
9
|
+
/** Show separator lines */
|
|
10
|
+
showSeparators?: boolean;
|
|
11
|
+
/** Label above the ad */
|
|
12
|
+
label?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function WakaAdInline({ slotId, size, align, margin, showSeparators, label, className, ...bannerProps }: WakaAdInlineProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export default WakaAdInline;
|