diff --git a/crates/fluvio-hub-util/src/cmd/list.rs b/crates/fluvio-hub-util/src/cmd/list.rs index 7e3f9d3c8cf..4cbd31c1cba 100644 --- a/crates/fluvio-hub-util/src/cmd/list.rs +++ b/crates/fluvio-hub-util/src/cmd/list.rs @@ -1,6 +1,8 @@ use std::sync::Arc; use std::fmt::Debug; +use chrono::DateTime; +use chrono::Utc; use clap::Parser; use anyhow::Result; @@ -35,6 +37,7 @@ mod output { //! # Fluvio hub list - output processing //! //! Format SmartModules response based on output type + use chrono::{DateTime, Utc}; use comfy_table::{Cell, Row}; use comfy_table::CellAlignment; use tracing::debug; @@ -45,7 +48,8 @@ mod output { use fluvio_extension_common::Terminal; use fluvio_extension_common::output::TableOutputHandler; use fluvio_extension_common::t_println; - use crate::PackageMeta; + + use crate::{PackageMeta, PackageMetaExt}; #[derive(Serialize)] struct ListConnectors(Vec); @@ -78,7 +82,7 @@ mod output { impl TableOutputHandler for ListConnectors { /// table header implementation fn header(&self) -> Row { - Row::from(["CONNECTOR", "Visibility"]) + Row::from(["CONNECTOR", "Visibility", "Released"]) } /// return errors in string format @@ -94,6 +98,13 @@ mod output { Row::from([ Cell::new(e.pkg_name()).set_alignment(CellAlignment::Left), Cell::new(&e.visibility).set_alignment(CellAlignment::Left), + Cell::new( + e.published_at() + .map(|date| { + date.format("%Y-%m-%d %H:%M:%S").to_string() + }) + .unwrap_or(String::from("N/A")), + ), ]) }) .collect()