ic_query/sns/report/model/reports/
list.rs1use crate::report::ReportProvenance;
8use crate::sns::report::model::MainnetSnsCanisters;
9use serde::Serialize;
10
11#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
18pub struct SnsListReport {
19 pub schema_version: u32,
20 pub network: String,
21 pub sns_wasm_canister_id: String,
22 pub fetched_at: String,
23 pub source_endpoint: String,
24 pub fetched_by: String,
25 #[serde(flatten)]
27 pub provenance: ReportProvenance,
28 pub all_lifecycles: bool,
30 pub verbose: bool,
31 pub sort: String,
32 pub catalog_sns_count: usize,
34 pub excluded_sns_count: usize,
36 pub sns_count: usize,
37 pub metadata_error_count: usize,
38 pub lifecycle_error_count: usize,
40 pub sns_instances: Vec<SnsListRow>,
41}
42
43#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
50pub struct SnsListRow {
51 pub id: usize,
52 pub name: String,
53 #[serde(flatten)]
55 pub canisters: MainnetSnsCanisters,
56 pub metadata_error: Option<String>,
57 pub lifecycle: Option<i32>,
59 pub lifecycle_error: Option<String>,
61}
62
63#[derive(Clone, Debug, Eq, PartialEq, Serialize)]
70pub struct SnsInfoReport {
71 pub schema_version: u32,
72 pub network: String,
73 pub sns_wasm_canister_id: String,
74 pub fetched_at: String,
75 pub source_endpoint: String,
76 pub fetched_by: String,
77 pub id: usize,
78 pub name: String,
79 pub description: Option<String>,
80 pub url: Option<String>,
81 #[serde(flatten)]
83 pub canisters: MainnetSnsCanisters,
84 pub metadata_error: Option<String>,
85}