Commit b9a20cf
Benchmarks
Changed files (17)
addedbenchmarks/.gitignoreaddedbenchmarks/Cargo.lockaddedbenchmarks/Cargo.tomladdedbenchmarks/README.mdaddedbenchmarks/build.shaddedbenchmarks/dioxus/Cargo.tomladdedbenchmarks/dioxus/index.htmladdedbenchmarks/dioxus/src/lib.rsaddedbenchmarks/kaja/Cargo.tomladdedbenchmarks/kaja/index.htmladdedbenchmarks/kaja/src/lib.rsaddedbenchmarks/leptos/Cargo.tomladdedbenchmarks/leptos/index.htmladdedbenchmarks/leptos/src/lib.rsaddedbenchmarks/yew/Cargo.tomladdedbenchmarks/yew/index.htmladdedbenchmarks/yew/src/lib.rs
Diff
new file mode 100644@@ -0,0 +1,2 @@+/target/+*/pkg/new file mode 100644@@ -0,0 +1,3738 @@+# This file is automatically @generated by Cargo.+# It is not intended for manual editing.+version = 4++[[package]]+name = "aho-corasick"+version = "1.1.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba"+dependencies = [+ "memchr",+]++[[package]]+name = "any_spawner"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1384d3fe1eecb464229fcf6eebb72306591c56bf27b373561489458a7c73027d"+dependencies = [+ "futures",+ "thiserror 2.0.21",+ "wasm-bindgen-futures",+]++[[package]]+name = "anyhow"+version = "1.0.104"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470"++[[package]]+name = "anymap2"+version = "0.13.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d301b3b94cb4b2f23d7917810addbbaff90738e0ca2be692bd027e70d7e0330c"++[[package]]+name = "async-lock"+version = "3.4.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311"+dependencies = [+ "event-listener",+ "event-listener-strategy",+ "pin-project-lite",+]++[[package]]+name = "async-once-cell"+version = "0.5.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4288f83726785267c6f2ef073a3d83dc3f9b81464e9f99898240cced85fce35a"++[[package]]+name = "async-trait"+version = "0.1.92"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "82f6aeea286b8eb4dd3431a1be1b59d290ace00f5bfd8e2a159bc2a05e2c1667"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "attribute-derive"+version = "0.11.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d2f9ef7a68684657ce9da341c934c73b63df7a3585a61e366d84c84ed5d3d167"+dependencies = [+ "attribute-derive-macro",+ "manyhow",+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "attribute-derive-macro"+version = "0.11.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "300d426e5e73549125bb8e4649bdd5508f82c94ddf898fb0517246e71dfb8e98"+dependencies = [+ "collection_literals",+ "interpolator",+ "manyhow",+ "proc-macro-utils",+ "proc-macro2",+ "quote",+ "quote-use",+ "syn 3.0.9",+]++[[package]]+name = "autocfg"+version = "1.5.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"++[[package]]+name = "base16"+version = "0.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d27c3610c36aee21ce8ac510e6224498de4228ad772a171ed65643a24693a5a8"++[[package]]+name = "base64"+version = "0.22.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"++[[package]]+name = "bincode"+version = "1.3.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"+dependencies = [+ "serde",+]++[[package]]+name = "bitflags"+version = "2.13.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06"++[[package]]+name = "block-buffer"+version = "0.10.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"+dependencies = [+ "generic-array",+]++[[package]]+name = "boolinator"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cfa8873f51c92e232f9bac4065cddef41b714152812bfc5f7672ba16d6ef8cd9"++[[package]]+name = "bumpalo"+version = "3.20.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649"++[[package]]+name = "byteorder"+version = "1.5.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"++[[package]]+name = "bytes"+version = "1.12.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"++[[package]]+name = "camino"+version = "1.2.6"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "bbbad30e4b4c14a39e3cc8aed085a12a327257c316619c93581e017bc52be591"++[[package]]+name = "cfg-if"+version = "1.0.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600"++[[package]]+name = "ciborium"+version = "0.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e"+dependencies = [+ "ciborium-io",+ "ciborium-ll",+ "serde",+]++[[package]]+name = "ciborium-io"+version = "0.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757"++[[package]]+name = "ciborium-ll"+version = "0.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9"+dependencies = [+ "ciborium-io",+ "half",+]++[[package]]+name = "codee"+version = "0.3.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a9dbbdc4b4d349732bc6690de10a9de952bd39ba6a065c586e26600b6b0b91f5"+dependencies = [+ "serde",+ "serde_json",+ "thiserror 2.0.21",+]++[[package]]+name = "collection_literals"+version = "1.0.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2550f75b8cfac212855f6b1885455df8eaee8fe8e246b647d69146142e016084"++[[package]]+name = "config"+version = "0.15.27"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "38e9fbc53afcec54441422f1c596cd054655b32e70e1cbac956651b7b175a404"+dependencies = [+ "convert_case 0.6.0",+ "pathdiff",+ "serde_core",+ "toml",+ "winnow 1.0.4",+]++[[package]]+name = "console_error_panic_hook"+version = "0.1.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc"+dependencies = [+ "cfg-if",+ "wasm-bindgen",+]++[[package]]+name = "const-serialize"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "08259976d62c715c4826cb4a3d64a3a9e5c5f68f964ff6087319857f569f93a6"+dependencies = [+ "const-serialize-macro",+ "serde",+]++[[package]]+name = "const-serialize-macro"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "04382d0d9df7434af6b1b49ea1a026ef39df1b0738b1cc373368cf175354f6eb"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "const-str"+version = "1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "18f12cc9948ed9604230cdddc7c86e270f9401ccbe3c2e98a4378c5e7632212f"++[[package]]+name = "const_format"+version = "0.2.37"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a3decb4d6965448659923544a634a0571ba44cede4e11ef15a5a317126840454"+dependencies = [+ "const_format_proc_macros",+ "konst",+]++[[package]]+name = "const_format_proc_macros"+version = "0.2.37"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "941b570269a642506f08cb5b688c04bfa6cfd41a26f8bcdc49db8fd00c0ab659"+dependencies = [+ "proc-macro2",+ "quote",+ "unicode-xid",+]++[[package]]+name = "const_str_slice_concat"+version = "0.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f67855af358fcb20fac58f9d714c94e2b228fe5694c1c9b4ead4a366343eda1b"++[[package]]+name = "convert_case"+version = "0.6.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca"+dependencies = [+ "unicode-segmentation",+]++[[package]]+name = "convert_case"+version = "0.11.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "affbf0190ed2caf063e3def54ff444b449371d55c58e513a95ab98eca50adb49"+dependencies = [+ "unicode-segmentation",+]++[[package]]+name = "convert_case_extras"+version = "0.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "589c70f0faf8aa9d17787557d5eae854d7755cac50f5c3d12c81d3d57661cebb"+dependencies = [+ "convert_case 0.11.0",+]++[[package]]+name = "cpufeatures"+version = "0.2.17"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"+dependencies = [+ "libc",+]++[[package]]+name = "crunchy"+version = "0.2.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5"++[[package]]+name = "crypto-common"+version = "0.1.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a"+dependencies = [+ "generic-array",+ "typenum",+]++[[package]]+name = "darling"+version = "0.21.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0"+dependencies = [+ "darling_core",+ "darling_macro",+]++[[package]]+name = "darling_core"+version = "0.21.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4"+dependencies = [+ "fnv",+ "ident_case",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "darling_macro"+version = "0.21.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81"+dependencies = [+ "darling_core",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "dashmap"+version = "5.5.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"+dependencies = [+ "cfg-if",+ "hashbrown 0.14.5",+ "lock_api",+ "once_cell",+ "parking_lot_core",+]++[[package]]+name = "data-encoding"+version = "2.11.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4583a4551df46e2792f82ceeac45e850d2e2d5debba0b91f102385cda5b11f06"++[[package]]+name = "derive-where"+version = "1.7.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2e2b94854e8576378ccda7c8de8a66ed8b4e8acbd2c50ec3418ea6c8aaf4b567"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "digest"+version = "0.10.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"+dependencies = [+ "block-buffer",+ "crypto-common",+]++[[package]]+name = "dioxus"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "60a247114500f1a78e87022defa8173de847accfada8e8809dfae23a118a580c"+dependencies = [+ "dioxus-cli-config",+ "dioxus-config-macro",+ "dioxus-core",+ "dioxus-core-macro",+ "dioxus-devtools",+ "dioxus-document",+ "dioxus-fullstack",+ "dioxus-history",+ "dioxus-hooks",+ "dioxus-html",+ "dioxus-logger",+ "dioxus-signals",+ "dioxus-web",+ "manganis",+ "warnings",+]++[[package]]+name = "dioxus-cli-config"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cdd16948f1ffdb068dd9a64812158073a4250e2af4e98ea31fdac0312e6bce86"+dependencies = [+ "wasm-bindgen",+]++[[package]]+name = "dioxus-component-benchmark"+version = "0.1.0"+dependencies = [+ "dioxus",+ "wasm-bindgen",+]++[[package]]+name = "dioxus-config-macro"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "75cbf582fbb1c32d34a1042ea675469065574109c95154468710a4d73ee98b49"+dependencies = [+ "proc-macro2",+ "quote",+]++[[package]]+name = "dioxus-core"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9c03f451a119e47433c16e2d8eb5b15bf7d6e6734eb1a4c47574e6711dadff8d"+dependencies = [+ "const_format",+ "dioxus-core-types",+ "futures-channel",+ "futures-util",+ "generational-box",+ "longest-increasing-subsequence",+ "rustc-hash 1.1.0",+ "rustversion",+ "serde",+ "slab",+ "slotmap",+ "tracing",+ "warnings",+]++[[package]]+name = "dioxus-core-macro"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "105c954caaaedf8cd10f3d1ba576b01e18aa8d33ad435182125eefe488cf0064"+dependencies = [+ "convert_case 0.6.0",+ "dioxus-rsx",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "dioxus-core-types"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "91a82fccfa48574eb7aa183e297769540904694844598433a9eb55896ad9f93b"+dependencies = [+ "once_cell",+]++[[package]]+name = "dioxus-devtools"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "712a7300f1e8181218187b03502044157eef04e0a25b518117c5ef9ae1096880"+dependencies = [+ "dioxus-core",+ "dioxus-devtools-types",+ "dioxus-signals",+ "serde",+ "serde_json",+ "tracing",+ "tungstenite",+ "warnings",+]++[[package]]+name = "dioxus-devtools-types"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f62434973c0c9c5a3bc42e9cd5e7070401c2062a437fb5528f318c3e42ebf4ff"+dependencies = [+ "dioxus-core",+ "serde",+]++[[package]]+name = "dioxus-document"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "802a2014d1662b6615eec0a275745822ee4fc66aacd9d0f2fb33d6c8da79b8f2"+dependencies = [+ "dioxus-core",+ "dioxus-core-macro",+ "dioxus-core-types",+ "dioxus-html",+ "futures-channel",+ "futures-util",+ "generational-box",+ "lazy-js-bundle",+ "serde",+ "serde_json",+ "tracing",+]++[[package]]+name = "dioxus-fullstack"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "fe99b48a1348eec385b5c4bd3e80fd863b0d3b47257d34e2ddc58754dec5d128"+dependencies = [+ "base64",+ "bytes",+ "ciborium",+ "dioxus-devtools",+ "dioxus-history",+ "dioxus-lib",+ "dioxus-web",+ "dioxus_server_macro",+ "futures-channel",+ "futures-util",+ "generational-box",+ "once_cell",+ "serde",+ "server_fn 0.6.15",+ "tracing",+ "web-sys",+]++[[package]]+name = "dioxus-history"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5ae4e22616c698f35b60727313134955d885de2d32e83689258e586ebc9b7909"+dependencies = [+ "dioxus-core",+ "tracing",+]++[[package]]+name = "dioxus-hooks"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "948e2b3f20d9d4b2c300aaa60281b1755f3298684448920b27106da5841896d0"+dependencies = [+ "dioxus-core",+ "dioxus-signals",+ "futures-channel",+ "futures-util",+ "generational-box",+ "rustversion",+ "slab",+ "tracing",+ "warnings",+]++[[package]]+name = "dioxus-html"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "59c9a40e6fee20ce7990095492dedb6a753eebe05e67d28271a249de74dc796d"+dependencies = [+ "async-trait",+ "dioxus-core",+ "dioxus-core-macro",+ "dioxus-core-types",+ "dioxus-hooks",+ "dioxus-html-internal-macro",+ "enumset",+ "euclid",+ "futures-channel",+ "generational-box",+ "keyboard-types",+ "lazy-js-bundle",+ "rustversion",+ "tracing",+]++[[package]]+name = "dioxus-html-internal-macro"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "43ba87b53688a2c9f619ecdf4b3b955bc1f08bd0570a80a0d626c405f6d14a76"+dependencies = [+ "convert_case 0.6.0",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "dioxus-interpreter-js"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "330707b10ca75cb0eb05f9e5f8d80217cd0d7e62116a8277ae363c1a09b57a22"+dependencies = [+ "js-sys",+ "lazy-js-bundle",+ "rustc-hash 1.1.0",+ "sledgehammer_bindgen",+ "sledgehammer_utils",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "dioxus-lib"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5405b71aa9b8b0c3e0d22728f12f34217ca5277792bd315878cc6ecab7301b72"+dependencies = [+ "dioxus-config-macro",+ "dioxus-core",+ "dioxus-core-macro",+ "dioxus-document",+ "dioxus-history",+ "dioxus-hooks",+ "dioxus-html",+ "dioxus-rsx",+ "dioxus-signals",+ "warnings",+]++[[package]]+name = "dioxus-logger"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "545961e752f6c8bf59c274951b3c8b18a106db6ad2f9e2035b29e1f2a3e899b1"+dependencies = [+ "console_error_panic_hook",+ "dioxus-cli-config",+ "tracing",+ "tracing-subscriber",+ "tracing-wasm",+]++[[package]]+name = "dioxus-rsx"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3eb588e05800b5a7eb90b2f40fca5bbd7626e823fb5e1ba21e011de649b45aa1"+dependencies = [+ "proc-macro2",+ "proc-macro2-diagnostics 0.10.1",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "dioxus-signals"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "10e032dbb3a2c0386ec8b8ee59bc20b5aeb67038147c855801237b45b13d72ac"+dependencies = [+ "dioxus-core",+ "futures-channel",+ "futures-util",+ "generational-box",+ "once_cell",+ "parking_lot",+ "rustc-hash 1.1.0",+ "tracing",+ "warnings",+]++[[package]]+name = "dioxus-web"+version = "0.6.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "7e7c12475c3d360058b8afe1b68eb6dfc9cbb7dcd760aed37c5f85c561c83ed1"+dependencies = [+ "async-trait",+ "ciborium",+ "dioxus-cli-config",+ "dioxus-core",+ "dioxus-core-types",+ "dioxus-devtools",+ "dioxus-document",+ "dioxus-history",+ "dioxus-html",+ "dioxus-interpreter-js",+ "dioxus-signals",+ "futures-channel",+ "futures-util",+ "generational-box",+ "js-sys",+ "lazy-js-bundle",+ "rustc-hash 1.1.0",+ "serde",+ "serde-wasm-bindgen 0.5.0",+ "serde_json",+ "tracing",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "dioxus_server_macro"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "371a5b21989a06b53c5092e977b3f75d0e60a65a4c15a2aa1d07014c3b2dda97"+dependencies = [+ "proc-macro2",+ "quote",+ "server_fn_macro 0.6.15",+ "syn 2.0.119",+]++[[package]]+name = "displaydoc"+version = "0.2.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "drain_filter_polyfill"+version = "0.1.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "669a445ee724c5c69b1b06fe0b63e70a1c84bc9bb7d9696cd4f4e3ec45050408"++[[package]]+name = "dunce"+version = "1.0.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813"++[[package]]+name = "either"+version = "1.19.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0e9c71c2167ca323c882b99918929403426e2373ea17242ff5653e0d5e1058be"++[[package]]+name = "either_of"+version = "0.1.9"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5060e0a4cbf26a87550792688ade88e6b8aec9208613631a7a363bda7bc2d4cd"+dependencies = [+ "paste",+ "pin-project-lite",+]++[[package]]+name = "enumset"+version = "1.1.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2e6bd2d7c76d078cd7a460fa169f778c42c026fe16d90e37d7a45d37181bdce5"+dependencies = [+ "enumset_derive",+]++[[package]]+name = "enumset_derive"+version = "0.15.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f60587c2044cabd91c4d4c73e3912e9f1ea7d76905f31c7eec51869305dae044"+dependencies = [+ "darling",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "equivalent"+version = "1.0.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "00d174d5400e5e8fd687ad1049e2f578285fa914201b1af7e8b112a4546bd826"++[[package]]+name = "erased"+version = "0.1.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a1731451909bde27714eacba19c2566362a7f35224f52b153d3f42cf60f72472"++[[package]]+name = "euclid"+version = "0.22.14"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f1a05365e3b1c6d1650318537c7460c6923f1abdd272ad6842baa2b509957a06"+dependencies = [+ "num-traits",+]++[[package]]+name = "event-listener"+version = "5.4.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5a23add41df1562121a9393cb065eab5146a1242410f23a644851e90cfd669d2"+dependencies = [+ "parking",+ "pin-project-lite",+]++[[package]]+name = "event-listener-strategy"+version = "0.5.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93"+dependencies = [+ "event-listener",+ "pin-project-lite",+]++[[package]]+name = "fnv"+version = "1.0.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"++[[package]]+name = "form_urlencoded"+version = "1.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf"+dependencies = [+ "percent-encoding",+]++[[package]]+name = "futures"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9a31d2a3fbaaeb2af2368bbdd904aa8e812d3c04a1ee10d3171f52d556e5d0a3"+dependencies = [+ "futures-channel",+ "futures-core",+ "futures-executor",+ "futures-io",+ "futures-sink",+ "futures-task",+ "futures-util",+]++[[package]]+name = "futures-channel"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b1f9e3d69d39e4862ffed03ed071a76f9a13ba1d9109d355b0f0aa6b15e393c4"+dependencies = [+ "futures-core",+ "futures-sink",+]++[[package]]+name = "futures-core"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "92d699e522242e69e3003b94ecc1f960f3a5e015aa7c5d7486e65ad01dd94f5e"++[[package]]+name = "futures-executor"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "031b47cf1a3c6cc8bc2fc76cd437f521619387907d469316e7c0bc278f1f5432"+dependencies = [+ "futures-core",+ "futures-task",+ "futures-util",+]++[[package]]+name = "futures-io"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "53c0fa8157de1303bfffdaa1cc2a673bfffb60102f76b0ef4441659124373fed"++[[package]]+name = "futures-macro"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9fb9654ba8355388abeb8dcb4fc62f511300867002afc858860463bdd9fe0c44"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "futures-sink"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1944426bf7d03f1d14f708785e4b33efd750b36d48a157b836b3efc15ede8e1d"++[[package]]+name = "futures-task"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cd417de3d1d015fc3bfd2b1ea46dfc7bab72ef86f1cc7cc9c78e728b34a6d1fd"++[[package]]+name = "futures-util"+version = "0.3.34"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0d50a92467f8ba5dd6e3ee5d4bd04d73ab2e4e1c44474a0674821dfce14b79bc"+dependencies = [+ "futures-channel",+ "futures-core",+ "futures-io",+ "futures-macro",+ "futures-sink",+ "futures-task",+ "memchr",+ "pin-project-lite",+ "slab",+]++[[package]]+name = "generational-box"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a673cf4fb0ea6a91aa86c08695756dfe875277a912cdbf33db9a9f62d47ed82b"+dependencies = [+ "parking_lot",+ "tracing",+]++[[package]]+name = "generic-array"+version = "0.14.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"+dependencies = [+ "typenum",+ "version_check",+]++[[package]]+name = "getrandom"+version = "0.2.17"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0"+dependencies = [+ "cfg-if",+ "js-sys",+ "libc",+ "wasi",+ "wasm-bindgen",+]++[[package]]+name = "getrandom"+version = "0.4.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"+dependencies = [+ "cfg-if",+ "js-sys",+ "libc",+ "r-efi",+ "wasm-bindgen",+]++[[package]]+name = "gloo"+version = "0.8.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "28999cda5ef6916ffd33fb4a7b87e1de633c47c0dc6d97905fee1cdaa142b94d"+dependencies = [+ "gloo-console 0.2.3",+ "gloo-dialogs 0.1.1",+ "gloo-events 0.1.2",+ "gloo-file 0.2.3",+ "gloo-history 0.1.5",+ "gloo-net 0.3.1",+ "gloo-render 0.1.1",+ "gloo-storage 0.2.2",+ "gloo-timers 0.2.6",+ "gloo-utils 0.1.7",+ "gloo-worker 0.2.1",+]++[[package]]+name = "gloo"+version = "0.10.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cd35526c28cc55c1db77aed6296de58677dbab863b118483a27845631d870249"+dependencies = [+ "gloo-console 0.3.0",+ "gloo-dialogs 0.2.0",+ "gloo-events 0.2.0",+ "gloo-file 0.3.0",+ "gloo-history 0.2.2",+ "gloo-net 0.4.0",+ "gloo-render 0.2.0",+ "gloo-storage 0.3.0",+ "gloo-timers 0.3.0",+ "gloo-utils 0.2.0",+ "gloo-worker 0.4.0",+]++[[package]]+name = "gloo"+version = "0.12.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "dc13cc21c3835347855fd83900414d94716adc1e332f09f7fba56f21be127214"+dependencies = [+ "gloo-console 0.4.1",+ "gloo-dialogs 0.3.0",+ "gloo-events 0.3.0",+ "gloo-file 0.4.0",+ "gloo-history 0.3.0",+ "gloo-net 0.7.0",+ "gloo-render 0.3.0",+ "gloo-storage 0.4.0",+ "gloo-timers 0.4.0",+ "gloo-utils 0.3.0",+ "gloo-worker 0.6.0",+]++[[package]]+name = "gloo-console"+version = "0.2.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "82b7ce3c05debe147233596904981848862b068862e9ec3e34be446077190d3f"+dependencies = [+ "gloo-utils 0.1.7",+ "js-sys",+ "serde",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-console"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2a17868f56b4a24f677b17c8cb69958385102fa879418052d60b50bc1727e261"+dependencies = [+ "gloo-utils 0.2.0",+ "js-sys",+ "serde",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-console"+version = "0.4.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c8b39f7a21b04d982b709667625a20c7669890270ad77a40b74c0ad02bd61822"+dependencies = [+ "gloo-utils 0.3.0",+ "js-sys",+ "serde",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-dialogs"+version = "0.1.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "67062364ac72d27f08445a46cab428188e2e224ec9e37efdba48ae8c289002e6"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-dialogs"+version = "0.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "bf4748e10122b01435750ff530095b1217cf6546173459448b83913ebe7815df"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-dialogs"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "45618929b7022bb49903b958b5b7af1d4fb58fbd99712926d91641fe582f3d55"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-events"+version = "0.1.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "68b107f8abed8105e4182de63845afcc7b69c098b7852a813ea7462a320992fc"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-events"+version = "0.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "27c26fb45f7c385ba980f5fa87ac677e363949e065a083722697ef1b2cc91e41"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-events"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8c6a94fa8cd88bea0babf8a27fe9abbcdece831fd1c3c84dd5c231fab4685ec7"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-file"+version = "0.2.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a8d5564e570a38b43d78bdc063374a0c3098c4f0d64005b12f9bbe87e869b6d7"+dependencies = [+ "gloo-events 0.1.2",+ "js-sys",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-file"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "97563d71863fb2824b2e974e754a81d19c4a7ec47b09ced8a0e6656b6d54bd1f"+dependencies = [+ "gloo-events 0.2.0",+ "js-sys",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-file"+version = "0.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "544a15ff6a3d5976bebc97380c8471ae14283bc71f4bb198d6c8cae64f411ab7"+dependencies = [+ "gloo-events 0.3.0",+ "js-sys",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-history"+version = "0.1.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "85725d90bf0ed47063b3930ef28e863658a7905989e9929a8708aab74a1d5e7f"+dependencies = [+ "gloo-events 0.1.2",+ "gloo-utils 0.1.7",+ "serde",+ "serde-wasm-bindgen 0.5.0",+ "serde_urlencoded",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-history"+version = "0.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "903f432be5ba34427eac5e16048ef65604a82061fe93789f2212afc73d8617d6"+dependencies = [+ "getrandom 0.2.17",+ "gloo-events 0.2.0",+ "gloo-utils 0.2.0",+ "serde",+ "serde-wasm-bindgen 0.6.5",+ "serde_urlencoded",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-history"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f07f3d446931414cc92f4a1b6e631dfa233db2f96c887d5f72beeecd1b5db39c"+dependencies = [+ "getrandom 0.2.17",+ "gloo-events 0.3.0",+ "gloo-utils 0.3.0",+ "serde",+ "serde-wasm-bindgen 0.6.5",+ "serde_urlencoded",+ "thiserror 2.0.21",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-net"+version = "0.3.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a66b4e3c7d9ed8d315fd6b97c8b1f74a7c6ecbbc2320e65ae7ed38b7068cc620"+dependencies = [+ "futures-channel",+ "futures-core",+ "futures-sink",+ "gloo-utils 0.1.7",+ "http 0.2.12",+ "js-sys",+ "pin-project",+ "serde",+ "serde_json",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "gloo-net"+version = "0.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8ac9e8288ae2c632fa9f8657ac70bfe38a1530f345282d7ba66a1f70b72b7dc4"+dependencies = [+ "futures-channel",+ "futures-core",+ "futures-sink",+ "gloo-utils 0.2.0",+ "http 0.2.12",+ "js-sys",+ "pin-project",+ "serde",+ "serde_json",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "gloo-net"+version = "0.6.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c06f627b1a58ca3d42b45d6104bf1e1a03799df472df00988b6ba21accc10580"+dependencies = [+ "futures-channel",+ "futures-core",+ "futures-sink",+ "gloo-utils 0.2.0",+ "http 1.5.0",+ "js-sys",+ "pin-project",+ "serde",+ "serde_json",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "gloo-net"+version = "0.7.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a6420f887c48417e9e86c6cf61274eb231830cccc100e49613f7952e269a1fe1"+dependencies = [+ "futures-channel",+ "futures-core",+ "futures-sink",+ "gloo-utils 0.3.0",+ "http 1.5.0",+ "js-sys",+ "pin-project",+ "serde",+ "serde_json",+ "thiserror 2.0.21",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "gloo-render"+version = "0.1.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2fd9306aef67cfd4449823aadcd14e3958e0800aa2183955a309112a84ec7764"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-render"+version = "0.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "56008b6744713a8e8d98ac3dcb7d06543d5662358c9c805b4ce2167ad4649833"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-render"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3f609333b9e38e43e74224410d6616e3ad773ed6fe14f53cd8a006d1bb25e108"+dependencies = [+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-storage"+version = "0.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5d6ab60bf5dbfd6f0ed1f7843da31b41010515c745735c970e821945ca91e480"+dependencies = [+ "gloo-utils 0.1.7",+ "js-sys",+ "serde",+ "serde_json",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-storage"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "fbc8031e8c92758af912f9bc08fbbadd3c6f3cfcbf6b64cdf3d6a81f0139277a"+dependencies = [+ "gloo-utils 0.2.0",+ "js-sys",+ "serde",+ "serde_json",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-storage"+version = "0.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e82ce7d41c6d821640a43726f6ff33c924795cc151b62e5a84d0c988c151c980"+dependencies = [+ "gloo-utils 0.3.0",+ "js-sys",+ "serde",+ "serde_json",+ "thiserror 2.0.21",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-timers"+version = "0.2.6"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c"+dependencies = [+ "js-sys",+ "wasm-bindgen",+]++[[package]]+name = "gloo-timers"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "bbb143cf96099802033e0d4f4963b19fd2e0b728bcf076cd9cf7f6634f092994"+dependencies = [+ "js-sys",+ "wasm-bindgen",+]++[[package]]+name = "gloo-timers"+version = "0.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "482ce8a491a501da4cd806bd190275363d674f2845005c6ddbd5d3e1dd54495d"+dependencies = [+ "js-sys",+ "wasm-bindgen",+]++[[package]]+name = "gloo-utils"+version = "0.1.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "037fcb07216cb3a30f7292bd0176b050b7b9a052ba830ef7d5d65f6dc64ba58e"+dependencies = [+ "js-sys",+ "serde",+ "serde_json",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-utils"+version = "0.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa"+dependencies = [+ "js-sys",+ "serde",+ "serde_json",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-utils"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4202275d95a142fa209a1e35e91c250a710c5600731372cd3464a39ed01573d6"+dependencies = [+ "js-sys",+ "serde",+ "serde_json",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "gloo-worker"+version = "0.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "13471584da78061a28306d1359dd0178d8d6fc1c7c80e5e35d27260346e0516a"+dependencies = [+ "anymap2",+ "bincode",+ "gloo-console 0.2.3",+ "gloo-utils 0.1.7",+ "js-sys",+ "serde",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "gloo-worker"+version = "0.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "76495d3dd87de51da268fa3a593da118ab43eb7f8809e17eb38d3319b424e400"+dependencies = [+ "bincode",+ "futures",+ "gloo-utils 0.2.0",+ "gloo-worker-macros 0.1.0",+ "js-sys",+ "pinned",+ "serde",+ "thiserror 1.0.69",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "gloo-worker"+version = "0.6.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "142478655c5d764e5168d3019510ea0c0885687a72ba74e90548bd74ae160a41"+dependencies = [+ "bincode",+ "futures",+ "gloo-utils 0.2.0",+ "gloo-worker-macros 0.2.0",+ "js-sys",+ "pinned",+ "serde",+ "thiserror 2.0.21",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "gloo-worker-macros"+version = "0.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "956caa58d4857bc9941749d55e4bd3000032d8212762586fa5705632967140e7"+dependencies = [+ "proc-macro-crate 1.3.1",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "gloo-worker-macros"+version = "0.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f3bf5ede96b06406bd74351a026f708ae196b7dc262077aee56e6ad7223e7466"+dependencies = [+ "proc-macro-crate 3.3.0",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "guardian"+version = "1.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "17e2ac29387b1aa07a1e448f7bb4f35b500787971e965b02842b900afa5c8f6f"++[[package]]+name = "half"+version = "2.7.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b"+dependencies = [+ "cfg-if",+ "crunchy",+ "zerocopy",+]++[[package]]+name = "hashbrown"+version = "0.14.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"++[[package]]+name = "hashbrown"+version = "0.17.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a"++[[package]]+name = "hermit-abi"+version = "0.5.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e17592d60ebacc7d5e169f4663c5f84f9161cc90328abcfe8456f41e4dfcb284"++[[package]]+name = "html-escape"+version = "0.2.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c9356095b4b41197bba32173600e1582792cda618f65d12f68e2e77d273413c5"++[[package]]+name = "http"+version = "0.2.12"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"+dependencies = [+ "bytes",+ "fnv",+ "itoa",+]++[[package]]+name = "http"+version = "1.5.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "918d3568bebf352712bc2ef3d46a8bcf1a75b373be6539de198e9105cbbf9ce0"+dependencies = [+ "bytes",+ "itoa",+]++[[package]]+name = "httparse"+version = "1.10.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87"++[[package]]+name = "hydration_context"+version = "0.3.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "285b05858fe7d58c5eff059f7b46c228fd86996d996c59eb35fc0340d174f640"+dependencies = [+ "futures",+ "or_poisoned",+ "pin-project-lite",+ "serde",+ "throw_error",+]++[[package]]+name = "icu_collections"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "fe090a42a0d3140fed8c63263ed1fecc02422cb2f4bfe55cd8de2de1b8e105dd"+dependencies = [+ "displaydoc",+ "potential_utf",+ "utf8_iter",+ "yoke",+ "zerofrom",+ "zerovec",+]++[[package]]+name = "icu_locale_core"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "25d29b57c17c6528d0dc4c2141cfa2d08200465acb537a3909c8b9b8a4a984c0"+dependencies = [+ "displaydoc",+ "litemap",+ "tinystr",+ "writeable",+ "zerovec",+]++[[package]]+name = "icu_normalizer"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "404a3b8c486f205c87fe7f23ab6894d84a4ad76d6e4671ae1981ba7def87c599"+dependencies = [+ "icu_collections",+ "icu_normalizer_data",+ "icu_properties",+ "icu_provider",+ "smallvec",+ "zerovec",+]++[[package]]+name = "icu_normalizer_data"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "20f0088bfb7441f7a37fa0c9e20cb1e9cba1cac6b9ce8cd2a6dc44294f8e8cbc"++[[package]]+name = "icu_properties"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2ea83d991c56158f7cf898bf86436c1dfe7c07ee82fe88951f2695c9f37a379f"+dependencies = [+ "displaydoc",+ "icu_collections",+ "icu_locale_core",+ "icu_properties_data",+ "icu_provider",+ "zerotrie",+ "zerovec",+]++[[package]]+name = "icu_properties_data"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b98f29af82d02b163fe50161388350e743bb3107cc8e8c2f7314cb505faddfcf"++[[package]]+name = "icu_provider"+version = "2.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "413099315636c588ee8f011190b329b971a09a8fae9d157e01dcae8379468514"+dependencies = [+ "displaydoc",+ "icu_locale_core",+ "writeable",+ "yoke",+ "zerofrom",+ "zerotrie",+ "zerovec",+]++[[package]]+name = "ident_case"+version = "1.0.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"++[[package]]+name = "idna"+version = "1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de"+dependencies = [+ "idna_adapter",+ "smallvec",+ "utf8_iter",+]++[[package]]+name = "idna_adapter"+version = "1.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714"+dependencies = [+ "icu_normalizer",+ "icu_properties",+]++[[package]]+name = "implicit-clone"+version = "0.4.9"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f8a9aa791c7b5a71b636b7a68207fdebf171ddfc593d9c8506ec4cbc527b6a84"+dependencies = [+ "implicit-clone-derive",+ "indexmap",+]++[[package]]+name = "implicit-clone-derive"+version = "0.1.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "699c1b6d335e63d0ba5c1e1c7f647371ce989c3bcbe1f7ed2b85fa56e3bd1a21"+dependencies = [+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "indexmap"+version = "2.14.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855"+dependencies = [+ "equivalent",+ "hashbrown 0.17.1",+]++[[package]]+name = "interpolator"+version = "0.5.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "71dd52191aae121e8611f1e8dc3e324dd0dd1dee1e6dd91d10ee07a3cfb4d9d8"++[[package]]+name = "inventory"+version = "0.3.25"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6928282826c822ad91bf1c9a1cb90a30ba1c26770749929b4656cd6be829cd7c"+dependencies = [+ "rustversion",+]++[[package]]+name = "itertools"+version = "0.14.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285"+dependencies = [+ "either",+]++[[package]]+name = "itoa"+version = "1.0.18"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"++[[package]]+name = "js-sys"+version = "0.3.107"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8dc09d2154098bbf4ef54eab6b117a3c24cbbffe94046b16ee6d6d4510584d3a"+dependencies = [+ "cfg-if",+ "futures-util",+ "wasm-bindgen",+]++[[package]]+name = "kaja-callback-macro"+version = "1.0.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8d8b0c57aae1e1cb6ed7ad4668002943cc46affdb175625e054cc5ff5f3ddc0b"+dependencies = [+ "gloo 0.12.0",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "kaja-component-benchmark"+version = "0.1.0"+dependencies = [+ "gloo 0.12.0",+ "inventory",+ "js-sys",+ "kaja-web",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "kaja-html-macro"+version = "1.0.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a5c37d76721e795460d8ba194309f8c989a64a66dc79118de9dccc083e5fe9db"+dependencies = [+ "proc-macro-error",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "kaja-web"+version = "1.0.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "bc3203211c54861fc57d5059ad27498f2fcc420bdde37f20409a01fe4554f4e2"+dependencies = [+ "gloo 0.12.0",+ "gloo-console 0.4.1",+ "inventory",+ "js-sys",+ "kaja-callback-macro",+ "kaja-html-macro",+ "kaja-web-component",+ "serde",+ "serde-wasm-bindgen 0.5.0",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "kaja-web-component"+version = "1.0.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9e0eec363e341ba3b7de6f0c56bcb75e79db09bd6cf8b69cf5bf778ab8b4687a"+dependencies = [+ "gloo 0.12.0",+ "inventory",+ "js-sys",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "keyboard-types"+version = "0.7.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b750dcadc39a09dbadd74e118f6dd6598df77fa01df0cfcdc52c28dece74528a"+dependencies = [+ "bitflags",+]++[[package]]+name = "konst"+version = "0.2.20"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "128133ed7824fcd73d6e7b17957c5eb7bacb885649bd8c69708b2331a10bcefb"+dependencies = [+ "konst_macro_rules",+]++[[package]]+name = "konst_macro_rules"+version = "0.2.19"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a4933f3f57a8e9d9da04db23fb153356ecaf00cbd14aee46279c33dc80925c37"++[[package]]+name = "lazy-js-bundle"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e49596223b9d9d4947a14a25c142a6e7d8ab3f27eb3ade269d238bb8b5c267e2"++[[package]]+name = "lazy_static"+version = "1.5.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "20870f649af7073d53e38067b2a84312175d56ea15217e1b15bc83506ec50afb"++[[package]]+name = "leptos"+version = "0.8.23"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4b0f9f061ff585050a77e18b93a58d6c881c6785f473fc98924c4f77da50d891"+dependencies = [+ "any_spawner",+ "cfg-if",+ "either_of",+ "futures",+ "getrandom 0.4.3",+ "hydration_context",+ "leptos_config",+ "leptos_dom",+ "leptos_hot_reload",+ "leptos_macro",+ "leptos_server",+ "oco_ref",+ "or_poisoned",+ "paste",+ "reactive_graph",+ "rustc-hash 2.1.3",+ "rustc_version",+ "send_wrapper",+ "serde",+ "serde_json",+ "serde_qs 0.15.0",+ "server_fn 0.8.13",+ "slotmap",+ "tachys",+ "thiserror 2.0.21",+ "throw_error",+ "typed-builder",+ "typed-builder-macro",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "wasm_split_helpers",+ "web-sys",+]++[[package]]+name = "leptos-component-benchmark"+version = "0.1.0"+dependencies = [+ "leptos",+ "wasm-bindgen",+]++[[package]]+name = "leptos_config"+version = "0.8.10"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0c06f751315bccc0d193fab302ac01d25bcfcd97474d4676440e7e3250dc3fc3"+dependencies = [+ "config",+ "regex",+ "serde",+ "thiserror 2.0.21",+ "typed-builder",+]++[[package]]+name = "leptos_dom"+version = "0.8.8"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "35742e9ed8f8aaf9e549b454c68a7ac0992536e06856365639b111f72ab07884"+dependencies = [+ "js-sys",+ "or_poisoned",+ "reactive_graph",+ "send_wrapper",+ "tachys",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "leptos_hot_reload"+version = "0.8.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d84989bd3d604e66adbfe13a32bec2ea47bdcb6c9fcd643f784facbb32f6ef10"+dependencies = [+ "anyhow",+ "camino",+ "indexmap",+ "or_poisoned",+ "proc-macro2",+ "quote",+ "rstml",+ "serde",+ "syn 3.0.9",+ "walkdir",+]++[[package]]+name = "leptos_macro"+version = "0.8.20"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0066e6f8003dbedea0900a2d7ad11734ab1a541330718866dd4b9a394a032127"+dependencies = [+ "attribute-derive",+ "cfg-if",+ "convert_case 0.11.0",+ "convert_case_extras",+ "html-escape",+ "itertools",+ "leptos_hot_reload",+ "prettyplease 0.3.0",+ "proc-macro2",+ "quote",+ "rstml",+ "rustc_version",+ "server_fn_macro 0.8.12",+ "syn 3.0.9",+ "uuid",+]++[[package]]+name = "leptos_server"+version = "0.8.8"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "202b2d1261c22d886f307934760a6bb566444f68f39b24f6f10defdc23633049"+dependencies = [+ "any_spawner",+ "base64",+ "codee",+ "futures",+ "hydration_context",+ "or_poisoned",+ "reactive_graph",+ "send_wrapper",+ "serde",+ "serde_json",+ "server_fn 0.8.13",+ "tachys",+]++[[package]]+name = "libc"+version = "0.2.191"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "65cd87c9a6d60536580b316ad985726104730a5151c99845f2490428ef91240a"++[[package]]+name = "litemap"+version = "0.8.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "47d9d19d1d6efa0109d2f65ff4c85cddd50bd572e5a00127ab10987290bcefae"++[[package]]+name = "lock_api"+version = "0.4.14"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965"+dependencies = [+ "scopeguard",+]++[[package]]+name = "log"+version = "0.4.35"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5d15f86d12da44cd8d4ec3c73984537eb7f4cadcb9776a575a0a8a05ca11005c"++[[package]]+name = "longest-increasing-subsequence"+version = "0.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b3bd0dd2cd90571056fdb71f6275fada10131182f84899f4b2a916e565d81d86"++[[package]]+name = "manganis"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "317af44b15e7605b85f04525449a3bb631753040156c9b318e6cba8a3ea4ef73"+dependencies = [+ "const-serialize",+ "manganis-core",+ "manganis-macro",+]++[[package]]+name = "manganis-core"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c38bee65cc725b2bba23b5dbb290f57c8be8fadbe2043fb7e2ce73022ea06519"+dependencies = [+ "const-serialize",+ "dioxus-cli-config",+ "dioxus-core-types",+ "serde",+]++[[package]]+name = "manganis-macro"+version = "0.6.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d9f4f71310913c40174d9f0cfcbcb127dad0329ecdb3945678a120db22d3d065"+dependencies = [+ "dunce",+ "manganis-core",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "manyhow"+version = "0.14.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f1704b073316272a6785b70599f91f73b49022c2e290b065591ee6b9109ed8c7"+dependencies = [+ "manyhow-macros",+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "manyhow-macros"+version = "0.14.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "31601db71f1f5fb6f831a18aa3052d13a62528ee4f2cba7e8c9a5e258d953725"+dependencies = [+ "proc-macro-utils",+ "proc-macro2",+ "quote",+]++[[package]]+name = "memchr"+version = "2.8.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"++[[package]]+name = "next_tuple"+version = "0.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "60993920e071b0c9b66f14e2b32740a4e27ffc82854dcd72035887f336a09a28"++[[package]]+name = "num-traits"+version = "0.2.19"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"+dependencies = [+ "autocfg",+]++[[package]]+name = "num_cpus"+version = "1.17.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b"+dependencies = [+ "hermit-abi",+ "libc",+]++[[package]]+name = "oco_ref"+version = "0.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ed0423ff9973dea4d6bd075934fdda86ebb8c05bdf9d6b0507067d4a1226371d"+dependencies = [+ "serde",+ "thiserror 2.0.21",+]++[[package]]+name = "once_cell"+version = "1.21.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"++[[package]]+name = "or_poisoned"+version = "0.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8c04f5d74368e4d0dfe06c45c8627c81bd7c317d52762d118fb9b3076f6420fd"++[[package]]+name = "parking"+version = "2.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"++[[package]]+name = "parking_lot"+version = "0.12.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a"+dependencies = [+ "lock_api",+ "parking_lot_core",+]++[[package]]+name = "parking_lot_core"+version = "0.9.12"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1"+dependencies = [+ "cfg-if",+ "libc",+ "redox_syscall",+ "smallvec",+ "windows-link",+]++[[package]]+name = "paste"+version = "1.0.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"++[[package]]+name = "pathdiff"+version = "0.2.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3"++[[package]]+name = "percent-encoding"+version = "2.3.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"++[[package]]+name = "pin-project"+version = "1.1.13"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2466b2336ed02bcdca6b294417127b90ec92038d1d5c4fbeac971a922e0e0924"+dependencies = [+ "pin-project-internal",+]++[[package]]+name = "pin-project-internal"+version = "1.1.13"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c96395f0a926bc13b1c17622aaddda1ecb55d49c8f1bf9777e4d877800a43f8b"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "pin-project-lite"+version = "0.2.17"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd"++[[package]]+name = "pinned"+version = "0.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a829027bd95e54cfe13e3e258a1ae7b645960553fb82b75ff852c29688ee595b"+dependencies = [+ "futures",+ "rustversion",+ "thiserror 1.0.69",+]++[[package]]+name = "potential_utf"+version = "0.1.6"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d83eb9bc6d8e5cf568e7a1101d60ee05e81ed50ea106026f3d18deeb046d7661"+dependencies = [+ "zerovec",+]++[[package]]+name = "ppv-lite86"+version = "0.2.21"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"+dependencies = [+ "zerocopy",+]++[[package]]+name = "prettyplease"+version = "0.2.37"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b"+dependencies = [+ "proc-macro2",+ "syn 2.0.119",+]++[[package]]+name = "prettyplease"+version = "0.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2bfe0f4c752e450fc2faf62654f1c134747922825d5b04ca717b8874f41a40c0"+dependencies = [+ "proc-macro2",+ "syn 3.0.9",+]++[[package]]+name = "proc-macro-crate"+version = "1.3.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"+dependencies = [+ "once_cell",+ "toml_edit 0.19.15",+]++[[package]]+name = "proc-macro-crate"+version = "3.3.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35"+dependencies = [+ "toml_edit 0.22.27",+]++[[package]]+name = "proc-macro-error"+version = "1.0.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"+dependencies = [+ "proc-macro-error-attr",+ "proc-macro2",+ "quote",+ "syn 1.0.109",+ "version_check",+]++[[package]]+name = "proc-macro-error-attr"+version = "1.0.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"+dependencies = [+ "proc-macro2",+ "quote",+ "version_check",+]++[[package]]+name = "proc-macro-utils"+version = "0.10.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "eeaf08a13de400bc215877b5bdc088f241b12eb42f0a548d3390dc1c56bb7071"+dependencies = [+ "proc-macro2",+ "quote",+ "smallvec",+]++[[package]]+name = "proc-macro2"+version = "1.0.107"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"+dependencies = [+ "unicode-ident",+]++[[package]]+name = "proc-macro2-diagnostics"+version = "0.10.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+ "version_check",+]++[[package]]+name = "proc-macro2-diagnostics"+version = "0.11.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "df921e1ef974ebc8dd9effdb0c037a96928ae8cbf871438e02d6fd67204b595e"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+ "version_check",+]++[[package]]+name = "prokio"+version = "0.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "03b55e106e5791fa5a13abd13c85d6127312e8e09098059ca2bc9b03ca4cf488"+dependencies = [+ "futures",+ "gloo 0.8.1",+ "num_cpus",+ "once_cell",+ "pin-project",+ "pinned",+ "tokio",+ "tokio-stream",+ "wasm-bindgen-futures",+]++[[package]]+name = "quote"+version = "1.0.47"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"+dependencies = [+ "proc-macro2",+]++[[package]]+name = "quote-use"+version = "0.9.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "48356e493823dc3c1d7e9fc7b3ff204ecec48afbdd718fc4134091b88eb63f3d"+dependencies = [+ "quote",+ "quote-use-macros",+]++[[package]]+name = "quote-use-macros"+version = "0.9.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8cf1c5de6a7cc231c71e03c77aa4c7019097859ea7029156b54d2894a8430704"+dependencies = [+ "proc-macro-utils",+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "r-efi"+version = "6.0.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"++[[package]]+name = "rand"+version = "0.8.8"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e058c7de0b26af77780c769414d6257830bb240f3c38477dbc2c16e5f54d6d4c"+dependencies = [+ "libc",+ "rand_chacha",+ "rand_core",+]++[[package]]+name = "rand_chacha"+version = "0.3.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"+dependencies = [+ "ppv-lite86",+ "rand_core",+]++[[package]]+name = "rand_core"+version = "0.6.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"+dependencies = [+ "getrandom 0.2.17",+]++[[package]]+name = "reactive_graph"+version = "0.2.16"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3bcec36a2d1b9a53a4129b3270b19e3df6f6b88c2e7c97ed9404dc9307f137d7"+dependencies = [+ "any_spawner",+ "async-lock",+ "futures",+ "guardian",+ "hydration_context",+ "indexmap",+ "or_poisoned",+ "paste",+ "pin-project-lite",+ "rustc-hash 2.1.3",+ "rustc_version",+ "send_wrapper",+ "serde",+ "slotmap",+ "thiserror 2.0.21",+ "web-sys",+]++[[package]]+name = "reactive_stores"+version = "0.4.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a29e469b556f25486678e9f5f65fa21a0351d98affde9a7eea9fee286bf8ebd6"+dependencies = [+ "guardian",+ "indexmap",+ "itertools",+ "or_poisoned",+ "paste",+ "reactive_graph",+ "reactive_stores_macro",+ "rustc-hash 2.1.3",+ "send_wrapper",+]++[[package]]+name = "reactive_stores_macro"+version = "0.4.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8d11f1b82859d94577892b8037c35f8a4f066cbb3864583e22e68def0af49a88"+dependencies = [+ "convert_case 0.11.0",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "redox_syscall"+version = "0.5.18"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d"+dependencies = [+ "bitflags",+]++[[package]]+name = "regex"+version = "1.13.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d"+dependencies = [+ "aho-corasick",+ "memchr",+ "regex-automata",+ "regex-syntax",+]++[[package]]+name = "regex-automata"+version = "0.4.18"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2"+dependencies = [+ "aho-corasick",+ "memchr",+ "regex-syntax",+]++[[package]]+name = "regex-syntax"+version = "0.8.11"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"++[[package]]+name = "rstml"+version = "0.13.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c6bd1bfba3c4c0b57aae906204d9e5744f3f65800ce6c75bd4cc162f2c26f3aa"+dependencies = [+ "derive-where",+ "proc-macro2",+ "proc-macro2-diagnostics 0.11.0",+ "quote",+ "syn 3.0.9",+ "thiserror 2.0.21",+]++[[package]]+name = "rustc-hash"+version = "1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"++[[package]]+name = "rustc-hash"+version = "2.1.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d"++[[package]]+name = "rustc_version"+version = "0.4.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"+dependencies = [+ "semver",+]++[[package]]+name = "rustversion"+version = "1.0.23"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cf54715a573b99ac80df0bc206da022bcd442c974952c7b9720069370852e21f"++[[package]]+name = "ryu"+version = "1.0.23"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f"++[[package]]+name = "same-file"+version = "1.0.6"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"+dependencies = [+ "winapi-util",+]++[[package]]+name = "scopeguard"+version = "1.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"++[[package]]+name = "semver"+version = "1.0.28"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd"++[[package]]+name = "send_wrapper"+version = "0.6.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73"+dependencies = [+ "futures-core",+]++[[package]]+name = "serde"+version = "1.0.229"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba"+dependencies = [+ "serde_core",+ "serde_derive",+]++[[package]]+name = "serde-wasm-bindgen"+version = "0.5.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f3b143e2833c57ab9ad3ea280d21fd34e285a42837aeb0ee301f4f41890fa00e"+dependencies = [+ "js-sys",+ "serde",+ "wasm-bindgen",+]++[[package]]+name = "serde-wasm-bindgen"+version = "0.6.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b"+dependencies = [+ "js-sys",+ "serde",+ "wasm-bindgen",+]++[[package]]+name = "serde_core"+version = "1.0.229"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"+dependencies = [+ "serde_derive",+]++[[package]]+name = "serde_derive"+version = "1.0.229"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "serde_json"+version = "1.0.154"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e7e9cc8b1b85264074fbcc02a88680c4096b1e47df8f739dceb03bf482f04bd6"+dependencies = [+ "itoa",+ "memchr",+ "serde",+ "serde_core",+ "zmij",+]++[[package]]+name = "serde_qs"+version = "0.12.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0431a35568651e363364210c91983c1da5eb29404d9f0928b67d4ebcfa7d330c"+dependencies = [+ "percent-encoding",+ "serde",+ "thiserror 1.0.69",+]++[[package]]+name = "serde_qs"+version = "0.15.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f3faaf9e727533a19351a43cc5a8de957372163c7d35cc48c90b75cdda13c352"+dependencies = [+ "percent-encoding",+ "serde",+ "thiserror 2.0.21",+]++[[package]]+name = "serde_spanned"+version = "1.1.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4e7523beb55eece201a2356bee0bbca0d1ab466c14c07703b2e0ee6d42cb0c2c"+dependencies = [+ "serde_core",+]++[[package]]+name = "serde_urlencoded"+version = "0.7.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"+dependencies = [+ "form_urlencoded",+ "itoa",+ "ryu",+ "serde",+]++[[package]]+name = "server_fn"+version = "0.6.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4fae7a3038a32e5a34ba32c6c45eb4852f8affaf8b794ebfcd4b1099e2d62ebe"+dependencies = [+ "bytes",+ "const_format",+ "dashmap",+ "futures",+ "gloo-net 0.6.0",+ "http 1.5.0",+ "js-sys",+ "once_cell",+ "send_wrapper",+ "serde",+ "serde_json",+ "serde_qs 0.12.0",+ "server_fn_macro_default 0.6.15",+ "thiserror 1.0.69",+ "url",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "wasm-streams 0.4.2",+ "web-sys",+ "xxhash-rust",+]++[[package]]+name = "server_fn"+version = "0.8.13"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "be8559dd05af1b5b7e363a150616589d5a88af5187273f7f331ba0dae8922812"+dependencies = [+ "base64",+ "bytes",+ "const-str",+ "const_format",+ "futures",+ "gloo-net 0.6.0",+ "http 1.5.0",+ "js-sys",+ "or_poisoned",+ "pin-project-lite",+ "rustc_version",+ "rustversion",+ "send_wrapper",+ "serde",+ "serde_json",+ "serde_qs 0.15.0",+ "server_fn_macro_default 0.8.6",+ "thiserror 2.0.21",+ "throw_error",+ "url",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "wasm-streams 0.5.0",+ "web-sys",+ "xxhash-rust",+]++[[package]]+name = "server_fn_macro"+version = "0.6.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "faaaf648c6967aef78177c0610478abb5a3455811f401f3c62d10ae9bd3901a1"+dependencies = [+ "const_format",+ "convert_case 0.6.0",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+ "xxhash-rust",+]++[[package]]+name = "server_fn_macro"+version = "0.8.12"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ce79d7b6ab93f7994e5ff4999eb962f2aea370d7c3b91986eb75da738a8e65f9"+dependencies = [+ "const_format",+ "convert_case 0.11.0",+ "proc-macro2",+ "quote",+ "rustc_version",+ "syn 3.0.9",+ "xxhash-rust",+]++[[package]]+name = "server_fn_macro_default"+version = "0.6.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "7f2aa8119b558a17992e0ac1fd07f080099564f24532858811ce04f742542440"+dependencies = [+ "server_fn_macro 0.6.15",+ "syn 2.0.119",+]++[[package]]+name = "server_fn_macro_default"+version = "0.8.6"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d9a4f81a0d855f279c3448243138a55cbfdd9851da9341b9c1e5971b90089e61"+dependencies = [+ "server_fn_macro 0.8.12",+ "syn 3.0.9",+]++[[package]]+name = "sha1"+version = "0.10.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a978451301f4db1d02937a4ab3ccce137717b81826e79b7d49ffe3244a13c3b8"+dependencies = [+ "cfg-if",+ "cpufeatures",+ "digest",+]++[[package]]+name = "sha2"+version = "0.10.9"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"+dependencies = [+ "cfg-if",+ "cpufeatures",+ "digest",+]++[[package]]+name = "sharded-slab"+version = "0.1.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"+dependencies = [+ "lazy_static",+]++[[package]]+name = "slab"+version = "0.4.12"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5"++[[package]]+name = "sledgehammer_bindgen"+version = "0.6.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "49e83e178d176459c92bc129cfd0958afac3ced925471b889b3a75546cfc4133"+dependencies = [+ "sledgehammer_bindgen_macro",+ "wasm-bindgen",+]++[[package]]+name = "sledgehammer_bindgen_macro"+version = "0.6.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "bb251b407f50028476a600541542b605bb864d35d9ee1de4f6cab45d88475e6d"+dependencies = [+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "sledgehammer_utils"+version = "0.3.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "debdd4b83524961983cea3c55383b3910fd2f24fd13a188f5b091d2d504a61ae"+dependencies = [+ "rustc-hash 1.1.0",+]++[[package]]+name = "slotmap"+version = "1.1.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "bdd58c3c93c3d278ca835519292445cb4b0d4dc59ccfdf7ceadaab3f8aeb4038"+dependencies = [+ "serde",+ "version_check",+]++[[package]]+name = "smallvec"+version = "1.16.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d0d5d4b1981b8bbbb7aed204cae5726d683d5d6ac7e74ec54122ea28f315e7c8"++[[package]]+name = "stable_deref_trait"+version = "1.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596"++[[package]]+name = "syn"+version = "1.0.109"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"+dependencies = [+ "proc-macro2",+ "unicode-ident",+]++[[package]]+name = "syn"+version = "2.0.119"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"+dependencies = [+ "proc-macro2",+ "quote",+ "unicode-ident",+]++[[package]]+name = "syn"+version = "3.0.9"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d78c8dee4c7bf0e14673097256fed6142ce9d3b85a408189d07482442145823b"+dependencies = [+ "proc-macro2",+ "quote",+ "unicode-ident",+]++[[package]]+name = "synstructure"+version = "0.14.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "tachys"+version = "0.2.19"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e47e2220bb9d2a3be976a22a0fb7685a0b84499bb11ea5cb3bbc82907675ac68"+dependencies = [+ "any_spawner",+ "async-trait",+ "const_str_slice_concat",+ "drain_filter_polyfill",+ "either_of",+ "erased",+ "futures",+ "html-escape",+ "indexmap",+ "itertools",+ "js-sys",+ "next_tuple",+ "oco_ref",+ "or_poisoned",+ "paste",+ "reactive_graph",+ "reactive_stores",+ "rustc-hash 2.1.3",+ "rustc_version",+ "send_wrapper",+ "slotmap",+ "throw_error",+ "wasm-bindgen",+ "web-sys",+]++[[package]]+name = "thiserror"+version = "1.0.69"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"+dependencies = [+ "thiserror-impl 1.0.69",+]++[[package]]+name = "thiserror"+version = "2.0.21"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "09e52cb86a36cede5cb101bf8908837b3e4c6e5e59fe7fd85c23fb56200d189e"+dependencies = [+ "thiserror-impl 2.0.21",+]++[[package]]+name = "thiserror-impl"+version = "1.0.69"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "thiserror-impl"+version = "2.0.21"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "fe5197923287db20a58125f0bc85c062f7f2c892de97b18c356f9efb14b28524"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "thread_local"+version = "1.1.10"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1ad99c4c6d32803332c548b1af0540b357b3f5fc0be8f6c6bfe8b2e6ae784070"+dependencies = [+ "cfg-if",+]++[[package]]+name = "throw_error"+version = "0.3.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "dc0ed6038fcbc0795aca7c92963ddda636573b956679204e044492d2b13c8f64"+dependencies = [+ "pin-project-lite",+]++[[package]]+name = "tinystr"+version = "0.8.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "abc840c238154d58f9e86b2792261edfde565a17696e1cda1a449de27979801a"+dependencies = [+ "displaydoc",+ "zerovec",+]++[[package]]+name = "tokio"+version = "1.54.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b52fd3255258d26fac7264ab5a76b53c13367136dc011d3d6ad4f8ed070396a3"+dependencies = [+ "pin-project-lite",+]++[[package]]+name = "tokio-stream"+version = "0.1.19"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a3d06f0b082ba57c26b79407372e57cf2a1e28124f78e9479fe80322cf53420b"+dependencies = [+ "futures-core",+ "pin-project-lite",+ "tokio",+]++[[package]]+name = "toml"+version = "1.1.8+spec-1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "20489e00e4d8741d6be680764cc12e270655e375a20d1011e844a9c3379e678d"+dependencies = [+ "indexmap",+ "serde_core",+ "serde_spanned",+ "toml_datetime 1.1.2+spec-1.1.0",+ "toml_parser",+ "toml_writer",+ "winnow 1.0.4",+]++[[package]]+name = "toml_datetime"+version = "0.6.11"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c"++[[package]]+name = "toml_datetime"+version = "1.1.2+spec-1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2b86d767906c6c42421dcba507eb9d203e779497710a47782a224bb871653053"+dependencies = [+ "serde_core",+]++[[package]]+name = "toml_edit"+version = "0.19.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"+dependencies = [+ "indexmap",+ "toml_datetime 0.6.11",+ "winnow 0.5.40",+]++[[package]]+name = "toml_edit"+version = "0.22.27"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a"+dependencies = [+ "indexmap",+ "toml_datetime 0.6.11",+ "winnow 0.7.15",+]++[[package]]+name = "toml_parser"+version = "1.1.5+spec-1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "baa693a8032d7e1cada7d0041e96126df243179ff061456783ac7f12bda4744c"+dependencies = [+ "winnow 1.0.4",+]++[[package]]+name = "toml_writer"+version = "1.1.3+spec-1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "06bdbd8cfc056b8d2e2e85f29b56a3bdbecb527cef81eb39e3e7b98af4652770"++[[package]]+name = "tracing"+version = "0.1.44"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100"+dependencies = [+ "pin-project-lite",+ "tracing-attributes",+ "tracing-core",+]++[[package]]+name = "tracing-attributes"+version = "0.1.31"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "tracing-core"+version = "0.1.36"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a"+dependencies = [+ "once_cell",+]++[[package]]+name = "tracing-subscriber"+version = "0.3.23"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319"+dependencies = [+ "sharded-slab",+ "thread_local",+ "tracing-core",+]++[[package]]+name = "tracing-wasm"+version = "0.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07"+dependencies = [+ "tracing",+ "tracing-subscriber",+ "wasm-bindgen",+]++[[package]]+name = "tungstenite"+version = "0.23.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6e2e2ce1e47ed2994fd43b04c8f618008d4cabdd5ee34027cf14f9d918edd9c8"+dependencies = [+ "byteorder",+ "bytes",+ "data-encoding",+ "http 1.5.0",+ "httparse",+ "log",+ "rand",+ "sha1",+ "thiserror 1.0.69",+ "utf-8",+]++[[package]]+name = "typed-builder"+version = "0.23.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "31aa81521b70f94402501d848ccc0ecaa8f93c8eb6999eb9747e72287757ffda"+dependencies = [+ "typed-builder-macro",+]++[[package]]+name = "typed-builder-macro"+version = "0.23.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "076a02dc54dd46795c2e9c8282ed40bcfb1e22747e955de9389a1de28190fb26"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "typenum"+version = "1.20.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"++[[package]]+name = "unicode-ident"+version = "1.0.27"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a2c754d6c33795a1c324727428e5a7dedb5b06195f9890bdbcba760d3e246563"++[[package]]+name = "unicode-segmentation"+version = "1.13.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8"++[[package]]+name = "unicode-xid"+version = "0.2.6"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853"++[[package]]+name = "url"+version = "2.5.8"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed"+dependencies = [+ "form_urlencoded",+ "idna",+ "percent-encoding",+ "serde",+]++[[package]]+name = "utf-8"+version = "0.7.6"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"++[[package]]+name = "utf8_iter"+version = "1.1.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "af3bd9d3e571c26fcce9d033b87ea5ab061b8d2ffe9b7a5675d810d68f03edf0"+dependencies = [+ "utf_types",+]++[[package]]+name = "utf_types"+version = "1.0.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3a3b425286980a367278453f3b6d28cdcb134b574e5a35824a6ff5eebad50bb6"++[[package]]+name = "uuid"+version = "1.29.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4a0e2d11620c50695fe12bbbfde96b3477fe606e7284c22d505c12ce51214514"+dependencies = [+ "getrandom 0.4.3",+ "js-sys",+ "wasm-bindgen",+]++[[package]]+name = "version_check"+version = "0.9.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"++[[package]]+name = "walkdir"+version = "2.5.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"+dependencies = [+ "same-file",+ "winapi-util",+]++[[package]]+name = "warnings"+version = "0.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "64f68998838dab65727c9b30465595c6f7c953313559371ca8bf31759b3680ad"+dependencies = [+ "pin-project",+ "tracing",+ "warnings-macro",+]++[[package]]+name = "warnings-macro"+version = "0.2.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "59195a1db0e95b920366d949ba5e0d3fc0e70b67c09be15ce5abb790106b0571"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "wasi"+version = "0.11.1+wasi-snapshot-preview1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"++[[package]]+name = "wasm-bindgen"+version = "0.2.130"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "a0181c14ddd6c7b8b0b0132a5f1ea2f32be0d893cd3ea97b6e3b28886b8a3d1c"+dependencies = [+ "cfg-if",+ "rustversion",+ "wasm-bindgen-macro",+ "wasm-bindgen-shared",+]++[[package]]+name = "wasm-bindgen-futures"+version = "0.4.80"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5e14e0327cb5368ad60ccb22d04a9827a693c95a926d8d125e9fa39e0baec501"+dependencies = [+ "js-sys",+ "tokio",+ "wasm-bindgen",+]++[[package]]+name = "wasm-bindgen-macro"+version = "0.2.130"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6e931a02a39abdbf66966fc35902b5ed58344750a70885bed4ebb3d8eaf28ed9"+dependencies = [+ "quote",+ "wasm-bindgen-macro-support",+]++[[package]]+name = "wasm-bindgen-macro-support"+version = "0.2.130"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2ca4b54280e455bd831e33a6b8e734baf432fe63fbc35c42ac14ce67a043a53a"+dependencies = [+ "bumpalo",+ "proc-macro2",+ "quote",+ "syn 3.0.9",+ "wasm-bindgen-shared",+]++[[package]]+name = "wasm-bindgen-shared"+version = "0.2.130"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3b1f9c3798725016c6ee5f2f57869ec0831e8bbc0ab0310a86e787e97f41389e"+dependencies = [+ "unicode-ident",+]++[[package]]+name = "wasm-streams"+version = "0.4.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65"+dependencies = [+ "futures-util",+ "js-sys",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "wasm-streams"+version = "0.5.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9d1ec4f6517c9e11ae630e200b2b65d193279042e28edd4a2cda233e46670bbb"+dependencies = [+ "futures-util",+ "js-sys",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+]++[[package]]+name = "wasm_split_helpers"+version = "0.2.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ab578aae2fe2916edaea06843187d50f87b0965622da0ceef648edca27b385ba"+dependencies = [+ "async-once-cell",+ "wasm_split_macros",+]++[[package]]+name = "wasm_split_macros"+version = "0.2.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3e653af7ee4a9ef0fce481a9ec6f43cb78de20d0cdb4f4f5862e1dc6e407e6c8"+dependencies = [+ "base16",+ "quote",+ "sha2",+ "syn 2.0.119",+]++[[package]]+name = "web-sys"+version = "0.3.107"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d7d179596ff5ec0f6de4db64d54011bde6289cc49603d3a6e4ce3f329207ab88"+dependencies = [+ "js-sys",+ "wasm-bindgen",+]++[[package]]+name = "winapi-util"+version = "0.1.11"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"+dependencies = [+ "windows-sys",+]++[[package]]+name = "windows-link"+version = "0.2.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"++[[package]]+name = "windows-sys"+version = "0.61.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"+dependencies = [+ "windows-link",+]++[[package]]+name = "winnow"+version = "0.5.40"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"+dependencies = [+ "memchr",+]++[[package]]+name = "winnow"+version = "0.7.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945"+dependencies = [+ "memchr",+]++[[package]]+name = "winnow"+version = "1.0.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81"+dependencies = [+ "memchr",+]++[[package]]+name = "writeable"+version = "0.6.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc"++[[package]]+name = "xxhash-rust"+version = "0.8.19"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "550a2b930b62486a393c52d5c3b84bff264b28aa437ed64694d31e93b1757af7"++[[package]]+name = "yew"+version = "0.21.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5f1a03f255c70c7aa3e9c62e15292f142ede0564123543c1cc0c7a4f31660cac"+dependencies = [+ "console_error_panic_hook",+ "futures",+ "gloo 0.10.0",+ "implicit-clone",+ "indexmap",+ "js-sys",+ "prokio",+ "rustversion",+ "serde",+ "slab",+ "thiserror 1.0.69",+ "tokio",+ "tracing",+ "wasm-bindgen",+ "wasm-bindgen-futures",+ "web-sys",+ "yew-macro",+]++[[package]]+name = "yew-component-benchmark"+version = "0.1.0"+dependencies = [+ "wasm-bindgen",+ "yew",+]++[[package]]+name = "yew-macro"+version = "0.21.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "02fd8ca5166d69e59f796500a2ce432ff751edecbbb308ca59fd3fe4d0343de2"+dependencies = [+ "boolinator",+ "once_cell",+ "prettyplease 0.2.37",+ "proc-macro-error",+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "yoke"+version = "0.8.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "417ef3fcf6c300b7dbd25c85531a746931c02ad536f3cf4786ed1e88223340b3"+dependencies = [+ "stable_deref_trait",+ "yoke-derive",+ "zerofrom",+]++[[package]]+name = "yoke-derive"+version = "0.8.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ec8ebde2db3681e8c9980cc27822030e68752690ddfa9473e739aeb4dbde6d71"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+ "synstructure",+]++[[package]]+name = "zerocopy"+version = "0.8.63"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "e5fe1f8f1b06191a00962174c61aa5005e0bb391a6d80d07e24d115c01a92ed8"+dependencies = [+ "zerocopy-derive",+]++[[package]]+name = "zerocopy-derive"+version = "0.8.63"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "863ad3ac83293fb4d740aedbfdc9240dd8d1a50c1099acd76ce80ce7c7230c7f"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.119",+]++[[package]]+name = "zerofrom"+version = "0.1.8"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272"+dependencies = [+ "zerofrom-derive",+]++[[package]]+name = "zerofrom-derive"+version = "0.1.8"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+ "synstructure",+]++[[package]]+name = "zerotrie"+version = "0.2.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4ea269c3bd32f0a32c321907a2ae912ba6f4649bb0fc764a15627e99a7095a3f"+dependencies = [+ "displaydoc",+ "yoke",+ "zerofrom",+]++[[package]]+name = "zerovec"+version = "0.11.9"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f58a2799cfe9a1670c7ea8edbd52ef8edb93cb37a7f83bf31ba9e35d9dae6a40"+dependencies = [+ "yoke",+ "zerofrom",+ "zerovec-derive",+]++[[package]]+name = "zerovec-derive"+version = "0.11.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c3743ddbf47738d929cd1ae2e199d40d0162979dfe31aef8ae646d2bf00bf97a"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 3.0.9",+]++[[package]]+name = "zmij"+version = "1.0.23"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b"new file mode 100644@@ -0,0 +1,9 @@+[workspace]+resolver = "2"+members = ["kaja", "yew", "leptos", "dioxus"]++[profile.release]+opt-level = "z"+lto = true+codegen-units = 1+strip = truenew file mode 100644@@ -0,0 +1,15 @@+# Rust/WASM component size benchmark++Each package implements the same click counter: a button labeled `Clicks: 0` that increments when clicked. Kaja registers a `<kaja-counter>` custom element; Yew, Leptos, and Dioxus render their framework component into the document body.++## Build and measure++Requirements: Rust with the `wasm32-unknown-unknown` target, `wasm-pack`, and access to crates.io for dependencies.++```sh+sh wasm-benchmarks/build.sh+```++The script builds each package in release mode and prints the byte length of the wasm-bindgen-generated `*_bg.wasm` file. The workspace uses the same size-focused release profile for all packages. The reported byte count is the uncompressed file size; it does not include JavaScript glue or HTML and does not apply gzip/Brotli compression.++Each package has an `index.html` for manual browser testing after building. Serve a package directory over HTTP (for example, `python3 -m http.server 8000` from that directory) and open it in a browser.new file mode 100644@@ -0,0 +1,21 @@+#!/bin/sh+set -eu++script_dir=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)+cd "$script_dir"++build_and_measure() {+ package=$1+ wasm_name=$2++ (cd "$package" && wasm-pack build --target web --release --out-dir pkg)+ wasm_file="$package/pkg/${wasm_name}_bg.wasm"+ bytes=$(wc -c < "$wasm_file" | tr -d ' ')+ printf '%-8s %s bytes\n' "$package" "$bytes"+}++printf 'Uncompressed wasm-bindgen output (release, bytes):\n'+build_and_measure kaja kaja_component_benchmark+build_and_measure yew yew_component_benchmark+build_and_measure leptos leptos_component_benchmark+build_and_measure dioxus dioxus_component_benchmarknew file mode 100644@@ -0,0 +1,11 @@+[package]+name = "dioxus-component-benchmark"+version = "0.1.0"+edition = "2021"++[lib]+crate-type = ["cdylib"]++[dependencies]+dioxus = { version = "0.6", features = ["web"] }+wasm-bindgen = "0.2"new file mode 100644@@ -0,0 +1,13 @@+<!doctype html>+<html lang="en">+ <head>+ <meta charset="utf-8" />+ <meta name="viewport" content="width=device-width, initial-scale=1" />+ <title>Dioxus counter benchmark</title>+ <script type="module">+ import init from "./pkg/dioxus_component_benchmark.js";+ await init();+ </script>+ </head>+ <body></body>+</html>new file mode 100644@@ -0,0 +1,20 @@+use dioxus::prelude::*;+use wasm_bindgen::prelude::*;++#[component]+fn Counter() -> Element {+ let mut count = use_signal(|| 0_u32);++ rsx! {+ button {+ id: "counter",+ onclick: move |_| count += 1,+ "Clicks: {count}"+ }+ }+}++#[wasm_bindgen(start)]+pub fn main() {+ dioxus::launch(Counter);+}new file mode 100644@@ -0,0 +1,15 @@+[package]+name = "kaja-component-benchmark"+version = "0.1.0"+edition = "2024"++[lib]+crate-type = ["cdylib"]++[dependencies]+kaja-web = "=1.0.3"+wasm-bindgen = "0.2"+gloo = "0.12"+inventory = "0.3"+js-sys = "0.3"+web-sys = { version = "0.3", features = ["Element", "HtmlElement", "NodeList", "CustomElementRegistry", "ElementDefinitionOptions"] }new file mode 100644@@ -0,0 +1,15 @@+<!doctype html>+<html lang="en">+ <head>+ <meta charset="utf-8" />+ <meta name="viewport" content="width=device-width, initial-scale=1" />+ <title>Kaja counter benchmark</title>+ <script type="module">+ import init from "./pkg/kaja_component_benchmark.js";+ await init();+ </script>+ </head>+ <body>+ <kaja-counter></kaja-counter>+ </body>+</html>new file mode 100644@@ -0,0 +1,38 @@+use kaja_web::prelude::*;+use std::cell::Cell;++thread_local! {+ static CLICK_COUNT: Cell<u32> = const { Cell::new(0) };+}++#[component("kaja-counter")]+struct KajaCounter;++impl Component for KajaCounterComponent {+ fn connected(&self) {+ let content = html! {{+ <button id="counter" onclick="incrementCounter()">Clicks: 0</button>+ }};++ if let Some(element) = get_element_by_id(&self.get_id()) {+ element.set_inner_html(content.as_str());+ }+ }+}++#[callback(incrementCounter)]+fn increment_counter() {+ CLICK_COUNT.with(|count| {+ let next = count.get().saturating_add(1);+ count.set(next);++ if let Some(element) = get_element_by_id("counter") {+ element.set_text_content(Some(&format!("Clicks: {next}")));+ }+ });+}++#[wasm_bindgen(start)]+pub fn main() {+ init_callbacks();+}new file mode 100644@@ -0,0 +1,11 @@+[package]+name = "leptos-component-benchmark"+version = "0.1.0"+edition = "2021"++[lib]+crate-type = ["cdylib"]++[dependencies]+leptos = { version = "0.8", features = ["csr"] }+wasm-bindgen = "0.2"new file mode 100644@@ -0,0 +1,13 @@+<!doctype html>+<html lang="en">+ <head>+ <meta charset="utf-8" />+ <meta name="viewport" content="width=device-width, initial-scale=1" />+ <title>Leptos counter benchmark</title>+ <script type="module">+ import init from "./pkg/leptos_component_benchmark.js";+ await init();+ </script>+ </head>+ <body></body>+</html>new file mode 100644@@ -0,0 +1,19 @@+use leptos::prelude::*;+use wasm_bindgen::prelude::*;++#[component]+fn Counter() -> impl IntoView {+ let (count, set_count) = signal(0_u32);++ view! {+ <button id="counter" on:click=move |_| set_count.update(|count| *count = count.saturating_add(1))>+ "Clicks: "+ {move || count.get()}+ </button>+ }+}++#[wasm_bindgen(start)]+pub fn main() {+ mount_to_body(Counter);+}new file mode 100644@@ -0,0 +1,11 @@+[package]+name = "yew-component-benchmark"+version = "0.1.0"+edition = "2021"++[lib]+crate-type = ["cdylib"]++[dependencies]+yew = { version = "0.21", features = ["csr"] }+wasm-bindgen = "0.2"new file mode 100644@@ -0,0 +1,13 @@+<!doctype html>+<html lang="en">+ <head>+ <meta charset="utf-8" />+ <meta name="viewport" content="width=device-width, initial-scale=1" />+ <title>Yew counter benchmark</title>+ <script type="module">+ import init from "./pkg/yew_component_benchmark.js";+ await init();+ </script>+ </head>+ <body></body>+</html>new file mode 100644@@ -0,0 +1,20 @@+use wasm_bindgen::prelude::*;+use yew::prelude::*;++#[function_component(Counter)]+fn counter() -> Html {+ let count = use_state(|| 0_u32);+ let onclick = {+ let count = count.clone();+ Callback::from(move |_| count.set((*count).saturating_add(1)))+ };++ html! {+ <button id="counter" {onclick}>{format!("Clicks: {}", *count)}</button>+ }+}++#[wasm_bindgen(start)]+pub fn main() {+ Renderer::<Counter>::new().render();+}