ic-query 0.85.0

Internet Computer query library for CloudEngine, NNS, SNS, ICRC, system canisters, and public network metadata
Documentation
use ic_host_text::escape::terminal_text;

use super::model::NnsRegistryVersionReport;
use crate::human_quantity::byte_count_text;

#[must_use]
pub fn nns_registry_version_report_text(report: &NnsRegistryVersionReport) -> String {
    let [
        registry_id,
        version,
        network,
        fetched_at,
        endpoint,
        fetched_by,
    ] = crate::nns::render::registry_provenance_lines(&report.provenance);
    [
        network,
        registry_id,
        version,
        fetched_at,
        endpoint,
        fetched_by,
        "assurance: certified".to_string(),
        format!(
            "certificate_verified: {}",
            report.certification.certificate_verified
        ),
        format!(
            "certificate_time: {}",
            terminal_text(&report.certification.certificate_time)
        ),
        format!("root_key_digest: {}", report.certification.root_key_digest),
        format!(
            "certificate_bytes: {}",
            byte_count_text(report.certification.certificate_bytes as u128)
        ),
        format!(
            "hash_tree_bytes: {}",
            byte_count_text(report.certification.hash_tree_bytes as u128)
        ),
    ]
    .join("\n")
}