From 2f018e89c8584bc2bbca91054d0d5e96ed57e42d Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Fri, 9 Jan 2026 23:19:55 +0800 Subject: Add JSON output support for share list and see commands --- src/output/share.rs | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/output/share.rs (limited to 'src/output/share.rs') diff --git a/src/output/share.rs b/src/output/share.rs new file mode 100644 index 0000000..6fbfc3f --- /dev/null +++ b/src/output/share.rs @@ -0,0 +1,32 @@ +use std::collections::HashMap; + +use just_enough_vcs::vcs::data::{ + member::MemberId, + sheet::{SheetMappingMetadata, SheetPathBuf}, + vault::sheet_share::SheetShareId, +}; +use serde::{Deserialize, Serialize}; + +#[derive(Debug, Default, Serialize, Deserialize)] +#[serde(rename_all = "PascalCase")] +pub struct ShareListResult { + pub share_list: Vec, +} + +#[derive(Debug, Serialize, Deserialize)] +#[serde(rename_all = "PascalCase")] +pub struct ShareItem { + pub share_id: SheetShareId, + pub sharer: MemberId, + pub description: String, + pub file_count: usize, +} + +#[derive(Debug, Serialize, Deserialize)] +#[serde(rename_all = "PascalCase")] +pub struct SeeShareResult { + pub share_id: SheetShareId, + pub sharer: MemberId, + pub description: String, + pub mappings: HashMap, +} -- cgit