1mod dashboard;
5
6use serde::Serialize;
7
8#[derive(Clone, Copy, Debug, Serialize)]
9pub struct WebFeature {
10 pub route: &'static str,
11 pub section: &'static str,
12 pub label: &'static str,
13 pub tool: &'static str,
14 pub required_args: &'static [&'static str],
15 pub mutating: bool,
16 pub renderer: &'static str,
17 pub empty_state: &'static str,
18 pub error_state: &'static str,
19}
20
21pub fn all() -> Vec<WebFeature> {
22 dashboard::FEATURES.to_vec()
23}
24
25pub fn tool_names() -> Vec<&'static str> {
26 dashboard::FEATURES
27 .iter()
28 .map(|feature| feature.tool)
29 .collect()
30}