Something went wrong. Try again.
forked from evanpurkhiser/things3-cloud
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354use serde::{Deserialize, Serialize};use serde_json::Value;
use crate::ids::ThingsId;
/// area wire properties#[derive(Debug, Clone, Serialize, Deserialize, Default)]pub struct AreaProps { /// `tt`, area title #[serde(rename = "tt", default)] pub title: String,
/// `tg`, tag ids applied to this area #[serde(rename = "tg", default)] pub tag_ids: Vec<ThingsId>,
/// `ix`, sort index #[serde(rename = "ix", default)] pub sort_index: i32,
/// `xx`, conflict override metadata #[serde(rename = "xx", default)] pub conflict_overrides: Option<Value>,}
/// sparse patch fields for area `t=1` updates#[derive(Debug, Clone, Serialize, Deserialize, Default)]pub struct AreaPatch { /// `tt`, title #[serde(rename = "tt", skip_serializing_if = "Option::is_none")] pub title: Option<String>,
/// `tg`, tag ids #[serde(rename = "tg", skip_serializing_if = "Option::is_none")] pub tag_ids: Option<Vec<ThingsId>>,
/// `md`, modification timestamp #[serde(rename = "md", skip_serializing_if = "Option::is_none")] pub modification_date: Option<f64>,
/// `ix`, sort index #[serde(rename = "ix", skip_serializing_if = "Option::is_none")] pub sort_index: Option<i32>,}
impl AreaPatch { pub fn is_empty(&self) -> bool { self.title.is_none() && self.tag_ids.is_none() && self.modification_date.is_none() && self.sort_index.is_none() }}