use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PublishScriptBody {
#[serde(rename = "summary")]
pub summary: String,
#[serde(rename = "app")]
pub app: String,
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "kind", skip_serializing_if = "Option::is_none")]
pub kind: Option<String>,
#[serde(rename = "content")]
pub content: String,
#[serde(rename = "language")]
pub language: String,
#[serde(rename = "schema", skip_serializing_if = "Option::is_none")]
pub schema: Option<serde_json::Value>,
#[serde(rename = "lockfile", skip_serializing_if = "Option::is_none")]
pub lockfile: Option<String>,
#[serde(rename = "path", skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "source_path", skip_serializing_if = "Option::is_none")]
pub source_path: Option<String>,
#[serde(rename = "project_slug")]
pub project_slug: String,
}
impl PublishScriptBody {
pub fn new(summary: String, app: String, content: String, language: String, project_slug: String) -> PublishScriptBody {
PublishScriptBody {
summary,
app,
description: None,
kind: None,
content,
language,
schema: None,
lockfile: None,
path: None,
source_path: None,
project_slug,
}
}
}