Skip to main content

lenso_contracts/
story_display.rs

1use serde::{Deserialize, Serialize};
2use utoipa::ToSchema;
3
4#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, ToSchema)]
5#[serde(tag = "kind", rename_all = "snake_case")]
6pub enum StoryDisplaySource {
7    ExecutionName { name: String },
8    HttpRequest { method: String, path: String },
9}
10
11#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, ToSchema)]
12pub struct StoryDisplayDescriptor {
13    pub source: StoryDisplaySource,
14    pub display_name: String,
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub story_title: Option<String>,
17}