use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum UserDraftItemKind {
#[serde(rename = "script")]
Script,
#[serde(rename = "flow")]
Flow,
#[serde(rename = "app")]
App,
#[serde(rename = "raw_app")]
RawApp,
#[serde(rename = "resource")]
Resource,
#[serde(rename = "variable")]
Variable,
#[serde(rename = "trigger_schedule")]
TriggerSchedule,
#[serde(rename = "trigger_webhook")]
TriggerWebhook,
#[serde(rename = "trigger_default_email")]
TriggerDefaultEmail,
#[serde(rename = "trigger_email")]
TriggerEmail,
#[serde(rename = "trigger_http")]
TriggerHttp,
#[serde(rename = "trigger_websocket")]
TriggerWebsocket,
#[serde(rename = "trigger_postgres")]
TriggerPostgres,
#[serde(rename = "trigger_kafka")]
TriggerKafka,
#[serde(rename = "trigger_nats")]
TriggerNats,
#[serde(rename = "trigger_mqtt")]
TriggerMqtt,
#[serde(rename = "trigger_sqs")]
TriggerSqs,
#[serde(rename = "trigger_gcp")]
TriggerGcp,
#[serde(rename = "trigger_azure")]
TriggerAzure,
#[serde(rename = "trigger_poll")]
TriggerPoll,
#[serde(rename = "trigger_cli")]
TriggerCli,
#[serde(rename = "trigger_nextcloud")]
TriggerNextcloud,
#[serde(rename = "trigger_google")]
TriggerGoogle,
#[serde(rename = "trigger_github")]
TriggerGithub,
}
impl std::fmt::Display for UserDraftItemKind {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Script => write!(f, "script"),
Self::Flow => write!(f, "flow"),
Self::App => write!(f, "app"),
Self::RawApp => write!(f, "raw_app"),
Self::Resource => write!(f, "resource"),
Self::Variable => write!(f, "variable"),
Self::TriggerSchedule => write!(f, "trigger_schedule"),
Self::TriggerWebhook => write!(f, "trigger_webhook"),
Self::TriggerDefaultEmail => write!(f, "trigger_default_email"),
Self::TriggerEmail => write!(f, "trigger_email"),
Self::TriggerHttp => write!(f, "trigger_http"),
Self::TriggerWebsocket => write!(f, "trigger_websocket"),
Self::TriggerPostgres => write!(f, "trigger_postgres"),
Self::TriggerKafka => write!(f, "trigger_kafka"),
Self::TriggerNats => write!(f, "trigger_nats"),
Self::TriggerMqtt => write!(f, "trigger_mqtt"),
Self::TriggerSqs => write!(f, "trigger_sqs"),
Self::TriggerGcp => write!(f, "trigger_gcp"),
Self::TriggerAzure => write!(f, "trigger_azure"),
Self::TriggerPoll => write!(f, "trigger_poll"),
Self::TriggerCli => write!(f, "trigger_cli"),
Self::TriggerNextcloud => write!(f, "trigger_nextcloud"),
Self::TriggerGoogle => write!(f, "trigger_google"),
Self::TriggerGithub => write!(f, "trigger_github"),
}
}
}
impl Default for UserDraftItemKind {
fn default() -> UserDraftItemKind {
Self::Script
}
}