reactive_graph/client/types/components/
commands.rs

1use clap::Subcommand;
2
3use crate::client::types::components::args::add_extension::ComponentAddExtensionArgs;
4use crate::client::types::components::args::add_property::ComponentAddPropertyArgs;
5use crate::client::types::components::args::component_extension_type::ComponentExtensionTypeIdArgs;
6use crate::client::types::components::args::component_property::ComponentPropertyArgs;
7use crate::client::types::components::args::create::CreateComponentArgs;
8use crate::client::types::components::args::type_id::ComponentTypeIdArgs;
9use crate::client::types::components::args::update_description::ComponentUpdateDescriptionArgs;
10
11#[derive(Subcommand, Debug, Clone)]
12pub(crate) enum ComponentsCommands {
13    /// List all components.
14    #[non_exhaustive]
15    List,
16    /// Prints a single component.
17    #[non_exhaustive]
18    Get(ComponentTypeIdArgs),
19    /// List the properties of a component.
20    #[non_exhaustive]
21    ListProperties(ComponentTypeIdArgs),
22    /// List the extensions of a component.
23    #[non_exhaustive]
24    ListExtensions(ComponentTypeIdArgs),
25    /// Creates a new component.
26    #[non_exhaustive]
27    Create(CreateComponentArgs),
28    /// Deletes a component.
29    #[non_exhaustive]
30    Delete(ComponentTypeIdArgs),
31    /// Adds a property to a component.
32    #[non_exhaustive]
33    AddProperty(ComponentAddPropertyArgs),
34    /// Removes a property from a component.
35    #[non_exhaustive]
36    RemoveProperty(ComponentPropertyArgs),
37    /// Adds an extension to a component.
38    #[non_exhaustive]
39    AddExtension(ComponentAddExtensionArgs),
40    /// Removes an extension from a component.
41    #[non_exhaustive]
42    RemoveExtension(ComponentExtensionTypeIdArgs),
43    /// Updates the description of a component.
44    #[non_exhaustive]
45    UpdateDescription(ComponentUpdateDescriptionArgs),
46    /// Prints the JSON Schema of components.
47    #[non_exhaustive]
48    JsonSchema,
49}