DX components command (#4669)

* add component subcommand

* add dx component add, remove and list commands

* handle rust dependencies

* handle component dependencies

* fetch remote registries

* sort components before listing them

* remove local dependency

* move te component manifest into the dioxus workspace

* add additional instalation instructions the first time the component
module is created

* fix mod name

* fix clippy

* improve docs and move to the main branch of components

* fix typos

* more typos

* undo const-serialize changes

* remove a few unwraps

* Allow adding multiple components at once and add a `--all` flag

* add options to the config for the base path, global asset path and
default registry

* component_path -> component_dir

* component_dir is always relative to the crate root

* fix clippy

* fix request imports

* wip: code style changes

* rename to "components" instead of "component"

* bump lock

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
This commit is contained in:
Evan AlmloffandJonathan Kelley authored and GitHub committed 2025-10-20 17:20:46 -04:00
1 parent b3966c3509
commit 79613f9db9
18 files changed
+1101 -17

No files matched your search

Generated
+39 -3
View File
@@ -5333,6 +5333,7 @@ dependencies = [
"dioxus-cli-config",
"dioxus-cli-opt",
"dioxus-cli-telemetry",
"dioxus-component-manifest",
"dioxus-core",
"dioxus-core-types",
"dioxus-devtools-types",
@@ -5351,6 +5352,7 @@ dependencies = [
"fs2",
"futures-channel",
"futures-util",
"git2",
"handlebars",
"headers",
"html_parser",
@@ -5496,6 +5498,15 @@ dependencies = [
"uuid",
]
[[package]]
name = "dioxus-component-manifest"
version = "0.7.0-rc.2"
dependencies = [
"schemars 1.0.4",
"serde",
"serde_json",
]
[[package]]
name = "dioxus-config-macro"
version = "0.7.0-rc.2"
@@ -14694,10 +14705,23 @@ checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0"
dependencies = [
"dyn-clone",
"ref-cast",
"schemars_derive",
"serde",
"serde_json",
]
[[package]]
name = "schemars_derive"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33d020396d1d138dc19f1165df7545479dcd58d93810dc5d646a16e55abefa80"
dependencies = [
"proc-macro2",
"quote",
"serde_derive_internals",
"syn 2.0.104",
]
[[package]]
name = "scoped-tls"
version = "1.0.1"
@@ -15052,15 +15076,27 @@ dependencies = [
]
[[package]]
name = "serde_json"
version = "1.0.140"
name = "serde_derive_internals"
version = "0.29.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373"
checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
]
[[package]]
name = "serde_json"
version = "1.0.145"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
dependencies = [
"itoa",
"memchr",
"ryu",
"serde",
"serde_core",
]
[[package]]