Bevy+Ratutui powered Monitoring of Pico-Strike devices

Initial commit

sachy.dev f7664e3b

+3771
+1
.gitignore
··· 1 + /target
+3583
Cargo.lock
··· 1 + # This file is automatically @generated by Cargo. 2 + # It is not intended for manual editing. 3 + version = 4 4 + 5 + [[package]] 6 + name = "accesskit" 7 + version = "0.21.1" 8 + source = "registry+https://github.com/rust-lang/crates.io-index" 9 + checksum = "cf203f9d3bd8f29f98833d1fbef628df18f759248a547e7e01cfbf63cda36a99" 10 + 11 + [[package]] 12 + name = "addr2line" 13 + version = "0.25.1" 14 + source = "registry+https://github.com/rust-lang/crates.io-index" 15 + checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b" 16 + dependencies = [ 17 + "gimli", 18 + ] 19 + 20 + [[package]] 21 + name = "adler2" 22 + version = "2.0.1" 23 + source = "registry+https://github.com/rust-lang/crates.io-index" 24 + checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" 25 + 26 + [[package]] 27 + name = "aho-corasick" 28 + version = "1.1.4" 29 + source = "registry+https://github.com/rust-lang/crates.io-index" 30 + checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" 31 + dependencies = [ 32 + "memchr", 33 + ] 34 + 35 + [[package]] 36 + name = "allocator-api2" 37 + version = "0.2.21" 38 + source = "registry+https://github.com/rust-lang/crates.io-index" 39 + checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" 40 + 41 + [[package]] 42 + name = "android-activity" 43 + version = "0.6.0" 44 + source = "registry+https://github.com/rust-lang/crates.io-index" 45 + checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" 46 + dependencies = [ 47 + "android-properties", 48 + "bitflags 2.10.0", 49 + "cc", 50 + "cesu8", 51 + "jni", 52 + "jni-sys", 53 + "libc", 54 + "log", 55 + "ndk", 56 + "ndk-context", 57 + "ndk-sys", 58 + "num_enum", 59 + "thiserror 1.0.69", 60 + ] 61 + 62 + [[package]] 63 + name = "android-properties" 64 + version = "0.2.2" 65 + source = "registry+https://github.com/rust-lang/crates.io-index" 66 + checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" 67 + 68 + [[package]] 69 + name = "android_log-sys" 70 + version = "0.3.2" 71 + source = "registry+https://github.com/rust-lang/crates.io-index" 72 + checksum = "84521a3cf562bc62942e294181d9eef17eb38ceb8c68677bc49f144e4c3d4f8d" 73 + 74 + [[package]] 75 + name = "anyhow" 76 + version = "1.0.100" 77 + source = "registry+https://github.com/rust-lang/crates.io-index" 78 + checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" 79 + 80 + [[package]] 81 + name = "approx" 82 + version = "0.5.1" 83 + source = "registry+https://github.com/rust-lang/crates.io-index" 84 + checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" 85 + dependencies = [ 86 + "num-traits", 87 + ] 88 + 89 + [[package]] 90 + name = "arrayref" 91 + version = "0.3.9" 92 + source = "registry+https://github.com/rust-lang/crates.io-index" 93 + checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" 94 + 95 + [[package]] 96 + name = "arrayvec" 97 + version = "0.7.6" 98 + source = "registry+https://github.com/rust-lang/crates.io-index" 99 + checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" 100 + 101 + [[package]] 102 + name = "assert_type_match" 103 + version = "0.1.1" 104 + source = "registry+https://github.com/rust-lang/crates.io-index" 105 + checksum = "f548ad2c4031f2902e3edc1f29c29e835829437de49562d8eb5dc5584d3a1043" 106 + dependencies = [ 107 + "proc-macro2", 108 + "quote", 109 + "syn 2.0.112", 110 + ] 111 + 112 + [[package]] 113 + name = "async-broadcast" 114 + version = "0.7.2" 115 + source = "registry+https://github.com/rust-lang/crates.io-index" 116 + checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" 117 + dependencies = [ 118 + "event-listener", 119 + "event-listener-strategy", 120 + "futures-core", 121 + "pin-project-lite", 122 + ] 123 + 124 + [[package]] 125 + name = "async-channel" 126 + version = "2.5.0" 127 + source = "registry+https://github.com/rust-lang/crates.io-index" 128 + checksum = "924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2" 129 + dependencies = [ 130 + "concurrent-queue", 131 + "event-listener-strategy", 132 + "futures-core", 133 + "pin-project-lite", 134 + ] 135 + 136 + [[package]] 137 + name = "async-executor" 138 + version = "1.13.3" 139 + source = "registry+https://github.com/rust-lang/crates.io-index" 140 + checksum = "497c00e0fd83a72a79a39fcbd8e3e2f055d6f6c7e025f3b3d91f4f8e76527fb8" 141 + dependencies = [ 142 + "async-task", 143 + "concurrent-queue", 144 + "fastrand", 145 + "futures-lite", 146 + "pin-project-lite", 147 + "slab", 148 + ] 149 + 150 + [[package]] 151 + name = "async-fs" 152 + version = "2.2.0" 153 + source = "registry+https://github.com/rust-lang/crates.io-index" 154 + checksum = "8034a681df4aed8b8edbd7fbe472401ecf009251c8b40556b304567052e294c5" 155 + dependencies = [ 156 + "async-lock", 157 + "blocking", 158 + "futures-lite", 159 + ] 160 + 161 + [[package]] 162 + name = "async-io" 163 + version = "2.6.0" 164 + source = "registry+https://github.com/rust-lang/crates.io-index" 165 + checksum = "456b8a8feb6f42d237746d4b3e9a178494627745c3c56c6ea55d92ba50d026fc" 166 + dependencies = [ 167 + "autocfg", 168 + "cfg-if", 169 + "concurrent-queue", 170 + "futures-io", 171 + "futures-lite", 172 + "parking", 173 + "polling", 174 + "rustix", 175 + "slab", 176 + "windows-sys 0.61.2", 177 + ] 178 + 179 + [[package]] 180 + name = "async-lock" 181 + version = "3.4.2" 182 + source = "registry+https://github.com/rust-lang/crates.io-index" 183 + checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" 184 + dependencies = [ 185 + "event-listener", 186 + "event-listener-strategy", 187 + "pin-project-lite", 188 + ] 189 + 190 + [[package]] 191 + name = "async-task" 192 + version = "4.7.1" 193 + source = "registry+https://github.com/rust-lang/crates.io-index" 194 + checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" 195 + dependencies = [ 196 + "portable-atomic", 197 + ] 198 + 199 + [[package]] 200 + name = "atomic" 201 + version = "0.6.1" 202 + source = "registry+https://github.com/rust-lang/crates.io-index" 203 + checksum = "a89cbf775b137e9b968e67227ef7f775587cde3fd31b0d8599dbd0f598a48340" 204 + dependencies = [ 205 + "bytemuck", 206 + ] 207 + 208 + [[package]] 209 + name = "atomic-waker" 210 + version = "1.1.2" 211 + source = "registry+https://github.com/rust-lang/crates.io-index" 212 + checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" 213 + dependencies = [ 214 + "portable-atomic", 215 + ] 216 + 217 + [[package]] 218 + name = "atomicow" 219 + version = "1.1.0" 220 + source = "registry+https://github.com/rust-lang/crates.io-index" 221 + checksum = "f52e8890bb9844440d0c412fa74b67fd2f14e85248b6e00708059b6da9e5f8bf" 222 + dependencies = [ 223 + "portable-atomic", 224 + "portable-atomic-util", 225 + ] 226 + 227 + [[package]] 228 + name = "autocfg" 229 + version = "1.5.0" 230 + source = "registry+https://github.com/rust-lang/crates.io-index" 231 + checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" 232 + 233 + [[package]] 234 + name = "backtrace" 235 + version = "0.3.76" 236 + source = "registry+https://github.com/rust-lang/crates.io-index" 237 + checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6" 238 + dependencies = [ 239 + "addr2line", 240 + "cfg-if", 241 + "libc", 242 + "miniz_oxide", 243 + "object", 244 + "rustc-demangle", 245 + "windows-link", 246 + ] 247 + 248 + [[package]] 249 + name = "base64" 250 + version = "0.22.1" 251 + source = "registry+https://github.com/rust-lang/crates.io-index" 252 + checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" 253 + 254 + [[package]] 255 + name = "bevy" 256 + version = "0.17.3" 257 + source = "registry+https://github.com/rust-lang/crates.io-index" 258 + checksum = "76d3ee8652fe0577fd8a99054e147740850140d530be8e044a9be4e23a3e8a24" 259 + dependencies = [ 260 + "bevy_internal", 261 + ] 262 + 263 + [[package]] 264 + name = "bevy_a11y" 265 + version = "0.17.3" 266 + source = "registry+https://github.com/rust-lang/crates.io-index" 267 + checksum = "6702a82db1b383641fc7c503451847cdafb57076c203cd3bfe549d3eeef474c3" 268 + dependencies = [ 269 + "accesskit", 270 + "bevy_app", 271 + "bevy_derive", 272 + "bevy_ecs", 273 + "bevy_reflect", 274 + ] 275 + 276 + [[package]] 277 + name = "bevy_android" 278 + version = "0.17.3" 279 + source = "registry+https://github.com/rust-lang/crates.io-index" 280 + checksum = "42b2d9435e9fe8d7107bb795a6140277872ad5b992cb3934f8d28cfd11040f6f" 281 + dependencies = [ 282 + "android-activity", 283 + ] 284 + 285 + [[package]] 286 + name = "bevy_app" 287 + version = "0.17.3" 288 + source = "registry+https://github.com/rust-lang/crates.io-index" 289 + checksum = "8e4fc5dfe9d1d9b8233e1878353b5e66a3f5910c2131d3abf68f9a4116b2d433" 290 + dependencies = [ 291 + "bevy_derive", 292 + "bevy_ecs", 293 + "bevy_platform", 294 + "bevy_reflect", 295 + "bevy_tasks", 296 + "bevy_utils", 297 + "cfg-if", 298 + "console_error_panic_hook", 299 + "ctrlc", 300 + "downcast-rs", 301 + "log", 302 + "thiserror 2.0.17", 303 + "variadics_please", 304 + "wasm-bindgen", 305 + "web-sys", 306 + ] 307 + 308 + [[package]] 309 + name = "bevy_asset" 310 + version = "0.17.3" 311 + source = "registry+https://github.com/rust-lang/crates.io-index" 312 + checksum = "357787dbfaba3f73fd185e15d6df70605bddaa774f2ebbcab1aaa031f21fb6c2" 313 + dependencies = [ 314 + "async-broadcast", 315 + "async-fs", 316 + "async-lock", 317 + "atomicow", 318 + "bevy_android", 319 + "bevy_app", 320 + "bevy_asset_macros", 321 + "bevy_ecs", 322 + "bevy_platform", 323 + "bevy_reflect", 324 + "bevy_tasks", 325 + "bevy_utils", 326 + "bitflags 2.10.0", 327 + "blake3", 328 + "crossbeam-channel", 329 + "derive_more", 330 + "disqualified", 331 + "downcast-rs", 332 + "either", 333 + "futures-io", 334 + "futures-lite", 335 + "js-sys", 336 + "parking_lot", 337 + "ron", 338 + "serde", 339 + "stackfuture", 340 + "thiserror 2.0.17", 341 + "tracing", 342 + "uuid", 343 + "wasm-bindgen", 344 + "wasm-bindgen-futures", 345 + "web-sys", 346 + ] 347 + 348 + [[package]] 349 + name = "bevy_asset_macros" 350 + version = "0.17.3" 351 + source = "registry+https://github.com/rust-lang/crates.io-index" 352 + checksum = "afa09271d4ca0bf31fda3a9ad57273775d448a05c4046d9367f71d29968d85b4" 353 + dependencies = [ 354 + "bevy_macro_utils", 355 + "proc-macro2", 356 + "quote", 357 + "syn 2.0.112", 358 + ] 359 + 360 + [[package]] 361 + name = "bevy_camera" 362 + version = "0.17.3" 363 + source = "registry+https://github.com/rust-lang/crates.io-index" 364 + checksum = "8af1d5a57fde6e577e7b1db58996afb381618294be75a37b3070a20d309678b0" 365 + dependencies = [ 366 + "bevy_app", 367 + "bevy_asset", 368 + "bevy_color", 369 + "bevy_derive", 370 + "bevy_ecs", 371 + "bevy_image", 372 + "bevy_math", 373 + "bevy_mesh", 374 + "bevy_reflect", 375 + "bevy_transform", 376 + "bevy_utils", 377 + "bevy_window", 378 + "derive_more", 379 + "downcast-rs", 380 + "serde", 381 + "smallvec", 382 + "thiserror 2.0.17", 383 + "wgpu-types", 384 + ] 385 + 386 + [[package]] 387 + name = "bevy_color" 388 + version = "0.17.3" 389 + source = "registry+https://github.com/rust-lang/crates.io-index" 390 + checksum = "49504fac6b9897f03b4bdc0189c04ef1ba0a9b37926343aa520a71619e90e116" 391 + dependencies = [ 392 + "bevy_math", 393 + "bevy_reflect", 394 + "bytemuck", 395 + "derive_more", 396 + "encase", 397 + "serde", 398 + "thiserror 2.0.17", 399 + "wgpu-types", 400 + ] 401 + 402 + [[package]] 403 + name = "bevy_derive" 404 + version = "0.17.3" 405 + source = "registry+https://github.com/rust-lang/crates.io-index" 406 + checksum = "f9396b256b366a43d7f61d1f230cdab0a512fb4712cbf7d688f3d6fce4c5ea8a" 407 + dependencies = [ 408 + "bevy_macro_utils", 409 + "quote", 410 + "syn 2.0.112", 411 + ] 412 + 413 + [[package]] 414 + name = "bevy_diagnostic" 415 + version = "0.17.3" 416 + source = "registry+https://github.com/rust-lang/crates.io-index" 417 + checksum = "d1cdb0ed0c8423570fbbb7c4fc2719a203dd40928fefff45f76ef0889685a446" 418 + dependencies = [ 419 + "atomic-waker", 420 + "bevy_app", 421 + "bevy_ecs", 422 + "bevy_platform", 423 + "bevy_tasks", 424 + "bevy_time", 425 + "const-fnv1a-hash", 426 + "log", 427 + "serde", 428 + ] 429 + 430 + [[package]] 431 + name = "bevy_ecs" 432 + version = "0.17.3" 433 + source = "registry+https://github.com/rust-lang/crates.io-index" 434 + checksum = "a7dd5229dd00d00e70ac6b2fc0a139961252f6ce07d3d268cfcac0da86d5bde4" 435 + dependencies = [ 436 + "arrayvec", 437 + "bevy_ecs_macros", 438 + "bevy_platform", 439 + "bevy_ptr", 440 + "bevy_reflect", 441 + "bevy_tasks", 442 + "bevy_utils", 443 + "bitflags 2.10.0", 444 + "bumpalo", 445 + "concurrent-queue", 446 + "derive_more", 447 + "fixedbitset 0.5.7", 448 + "indexmap", 449 + "log", 450 + "nonmax", 451 + "serde", 452 + "slotmap", 453 + "smallvec", 454 + "thiserror 2.0.17", 455 + "variadics_please", 456 + ] 457 + 458 + [[package]] 459 + name = "bevy_ecs_macros" 460 + version = "0.17.3" 461 + source = "registry+https://github.com/rust-lang/crates.io-index" 462 + checksum = "c4d83bdd2285af4867e76c691406e0a4b55611b583d0c45b6ac7bcec1b45fd48" 463 + dependencies = [ 464 + "bevy_macro_utils", 465 + "proc-macro2", 466 + "quote", 467 + "syn 2.0.112", 468 + ] 469 + 470 + [[package]] 471 + name = "bevy_image" 472 + version = "0.17.3" 473 + source = "registry+https://github.com/rust-lang/crates.io-index" 474 + checksum = "d546bbe2486bfa14971517e7ef427a9384749817c201d3afc60de0325cf52f11" 475 + dependencies = [ 476 + "bevy_app", 477 + "bevy_asset", 478 + "bevy_color", 479 + "bevy_ecs", 480 + "bevy_math", 481 + "bevy_platform", 482 + "bevy_reflect", 483 + "bevy_utils", 484 + "bitflags 2.10.0", 485 + "bytemuck", 486 + "futures-lite", 487 + "guillotiere", 488 + "half", 489 + "image", 490 + "rectangle-pack", 491 + "serde", 492 + "thiserror 2.0.17", 493 + "tracing", 494 + "wgpu-types", 495 + ] 496 + 497 + [[package]] 498 + name = "bevy_input" 499 + version = "0.17.3" 500 + source = "registry+https://github.com/rust-lang/crates.io-index" 501 + checksum = "8ca955b99f4dc2059e9c8574f8d95a5dd5002809fda80d062a94a553c571a467" 502 + dependencies = [ 503 + "bevy_app", 504 + "bevy_ecs", 505 + "bevy_math", 506 + "bevy_platform", 507 + "bevy_reflect", 508 + "derive_more", 509 + "log", 510 + "smol_str", 511 + "thiserror 2.0.17", 512 + ] 513 + 514 + [[package]] 515 + name = "bevy_input_focus" 516 + version = "0.17.3" 517 + source = "registry+https://github.com/rust-lang/crates.io-index" 518 + checksum = "de4d1d0e833e31beba1f28a77152b35f946e8c45df364ec4969d58788ab9de7f" 519 + dependencies = [ 520 + "bevy_app", 521 + "bevy_ecs", 522 + "bevy_input", 523 + "bevy_math", 524 + "bevy_picking", 525 + "bevy_reflect", 526 + "bevy_window", 527 + "log", 528 + "thiserror 2.0.17", 529 + ] 530 + 531 + [[package]] 532 + name = "bevy_internal" 533 + version = "0.17.3" 534 + source = "registry+https://github.com/rust-lang/crates.io-index" 535 + checksum = "8f5e645f9e1a24c9667c768b6233beaf4e241739d8ca4fbba59435cc27aabad5" 536 + dependencies = [ 537 + "bevy_a11y", 538 + "bevy_android", 539 + "bevy_app", 540 + "bevy_color", 541 + "bevy_derive", 542 + "bevy_diagnostic", 543 + "bevy_ecs", 544 + "bevy_input", 545 + "bevy_input_focus", 546 + "bevy_math", 547 + "bevy_platform", 548 + "bevy_ptr", 549 + "bevy_reflect", 550 + "bevy_state", 551 + "bevy_tasks", 552 + "bevy_time", 553 + "bevy_transform", 554 + "bevy_utils", 555 + "bevy_window", 556 + ] 557 + 558 + [[package]] 559 + name = "bevy_log" 560 + version = "0.17.3" 561 + source = "registry+https://github.com/rust-lang/crates.io-index" 562 + checksum = "b1a2d4ea086ac4663ab9dfb056c7b85eee39e18f7e3e9a4ae6e39897eaa155c5" 563 + dependencies = [ 564 + "android_log-sys", 565 + "bevy_app", 566 + "bevy_ecs", 567 + "bevy_platform", 568 + "bevy_utils", 569 + "tracing", 570 + "tracing-log", 571 + "tracing-oslog", 572 + "tracing-subscriber", 573 + "tracing-wasm", 574 + ] 575 + 576 + [[package]] 577 + name = "bevy_macro_utils" 578 + version = "0.17.3" 579 + source = "registry+https://github.com/rust-lang/crates.io-index" 580 + checksum = "62d984f9f8bd0f0d9fb020492a955e641e30e7a425f3588bf346cb3e61fec3c3" 581 + dependencies = [ 582 + "parking_lot", 583 + "proc-macro2", 584 + "quote", 585 + "syn 2.0.112", 586 + "toml_edit", 587 + ] 588 + 589 + [[package]] 590 + name = "bevy_math" 591 + version = "0.17.3" 592 + source = "registry+https://github.com/rust-lang/crates.io-index" 593 + checksum = "5fa74ae5d968749cc073da991757d3c7e3504ac6dbaac5f8c2a54b9d19b0b7ed" 594 + dependencies = [ 595 + "approx", 596 + "bevy_reflect", 597 + "derive_more", 598 + "glam", 599 + "itertools 0.14.0", 600 + "libm", 601 + "rand 0.9.2", 602 + "rand_distr", 603 + "serde", 604 + "smallvec", 605 + "thiserror 2.0.17", 606 + "variadics_please", 607 + ] 608 + 609 + [[package]] 610 + name = "bevy_mesh" 611 + version = "0.17.3" 612 + source = "registry+https://github.com/rust-lang/crates.io-index" 613 + checksum = "cd9a0ea86abbd17655bc6f9f8d94461dfcd0322431f752fc03748df8b335eff2" 614 + dependencies = [ 615 + "bevy_app", 616 + "bevy_asset", 617 + "bevy_derive", 618 + "bevy_ecs", 619 + "bevy_image", 620 + "bevy_math", 621 + "bevy_mikktspace", 622 + "bevy_platform", 623 + "bevy_reflect", 624 + "bevy_transform", 625 + "bitflags 2.10.0", 626 + "bytemuck", 627 + "derive_more", 628 + "hexasphere", 629 + "thiserror 2.0.17", 630 + "tracing", 631 + "wgpu-types", 632 + ] 633 + 634 + [[package]] 635 + name = "bevy_mikktspace" 636 + version = "0.17.0-dev" 637 + source = "registry+https://github.com/rust-lang/crates.io-index" 638 + checksum = "7ef8e4b7e61dfe7719bb03c884dc270cd46a82efb40f93e9933b990c5c190c59" 639 + 640 + [[package]] 641 + name = "bevy_picking" 642 + version = "0.17.3" 643 + source = "registry+https://github.com/rust-lang/crates.io-index" 644 + checksum = "b371779713b40dea83b24cdb95054fe999fe8372351a317c4fb768859ac5f010" 645 + dependencies = [ 646 + "bevy_app", 647 + "bevy_asset", 648 + "bevy_camera", 649 + "bevy_derive", 650 + "bevy_ecs", 651 + "bevy_input", 652 + "bevy_math", 653 + "bevy_platform", 654 + "bevy_reflect", 655 + "bevy_time", 656 + "bevy_transform", 657 + "bevy_window", 658 + "tracing", 659 + "uuid", 660 + ] 661 + 662 + [[package]] 663 + name = "bevy_platform" 664 + version = "0.17.3" 665 + source = "registry+https://github.com/rust-lang/crates.io-index" 666 + checksum = "4691af6d7cfd1b5deb2fc926a43a180a546cdc3fe1e5a013fcee60db9bb2c81f" 667 + dependencies = [ 668 + "critical-section", 669 + "foldhash", 670 + "futures-channel", 671 + "getrandom", 672 + "hashbrown", 673 + "js-sys", 674 + "portable-atomic", 675 + "portable-atomic-util", 676 + "serde", 677 + "spin", 678 + "wasm-bindgen", 679 + "wasm-bindgen-futures", 680 + "web-time", 681 + ] 682 + 683 + [[package]] 684 + name = "bevy_ptr" 685 + version = "0.17.3" 686 + source = "registry+https://github.com/rust-lang/crates.io-index" 687 + checksum = "17d24d7906c7de556033168b3485de36c59049fbaef0c2c44c715a23e0329b10" 688 + 689 + [[package]] 690 + name = "bevy_ratatui" 691 + version = "0.10.0" 692 + source = "git+https://tangled.org/sachy.dev/bevy_ratatui#51e7cab7f1edbf1e086b022dd74c10a36e725b25" 693 + dependencies = [ 694 + "bevy", 695 + "bitflags 2.10.0", 696 + "color-eyre", 697 + "ratatui", 698 + "tracing", 699 + ] 700 + 701 + [[package]] 702 + name = "bevy_reflect" 703 + version = "0.17.3" 704 + source = "registry+https://github.com/rust-lang/crates.io-index" 705 + checksum = "b5472b91928c0f3e4e3988c0d036b00719f19520f53a0c3f8c2af72f00e693c5" 706 + dependencies = [ 707 + "assert_type_match", 708 + "bevy_platform", 709 + "bevy_ptr", 710 + "bevy_reflect_derive", 711 + "bevy_utils", 712 + "derive_more", 713 + "disqualified", 714 + "downcast-rs", 715 + "erased-serde", 716 + "foldhash", 717 + "glam", 718 + "inventory", 719 + "serde", 720 + "smallvec", 721 + "smol_str", 722 + "thiserror 2.0.17", 723 + "uuid", 724 + "variadics_please", 725 + "wgpu-types", 726 + ] 727 + 728 + [[package]] 729 + name = "bevy_reflect_derive" 730 + version = "0.17.3" 731 + source = "registry+https://github.com/rust-lang/crates.io-index" 732 + checksum = "083784255162fa39960aa3cf3c23af0e515db2daa7f2e796ae34df993f4d3f6c" 733 + dependencies = [ 734 + "bevy_macro_utils", 735 + "indexmap", 736 + "proc-macro2", 737 + "quote", 738 + "syn 2.0.112", 739 + "uuid", 740 + ] 741 + 742 + [[package]] 743 + name = "bevy_state" 744 + version = "0.17.3" 745 + source = "registry+https://github.com/rust-lang/crates.io-index" 746 + checksum = "05e8556a55d548844fc067fac6657b62f8073c94bd7e13c86aa7573f4c2a67b3" 747 + dependencies = [ 748 + "bevy_app", 749 + "bevy_ecs", 750 + "bevy_platform", 751 + "bevy_reflect", 752 + "bevy_state_macros", 753 + "bevy_utils", 754 + "log", 755 + "variadics_please", 756 + ] 757 + 758 + [[package]] 759 + name = "bevy_state_macros" 760 + version = "0.17.3" 761 + source = "registry+https://github.com/rust-lang/crates.io-index" 762 + checksum = "bcda45913b1d6470c6b751656e72fb3f25ca6b5b7b2ee055b294aaed1eb7e5ba" 763 + dependencies = [ 764 + "bevy_macro_utils", 765 + "quote", 766 + "syn 2.0.112", 767 + ] 768 + 769 + [[package]] 770 + name = "bevy_tasks" 771 + version = "0.17.3" 772 + source = "registry+https://github.com/rust-lang/crates.io-index" 773 + checksum = "bcbbfa5a58a16c4228434d3018c23fde3d78dcd76ec5f5b2b482a21f4b158dd3" 774 + dependencies = [ 775 + "async-channel", 776 + "async-executor", 777 + "async-io", 778 + "async-task", 779 + "atomic-waker", 780 + "bevy_platform", 781 + "crossbeam-queue", 782 + "derive_more", 783 + "futures-lite", 784 + "heapless", 785 + "pin-project", 786 + ] 787 + 788 + [[package]] 789 + name = "bevy_time" 790 + version = "0.17.3" 791 + source = "registry+https://github.com/rust-lang/crates.io-index" 792 + checksum = "32835c3dbe082fbbe7d4f2f37f655073421f2882d4320ac2d59f922474260de4" 793 + dependencies = [ 794 + "bevy_app", 795 + "bevy_ecs", 796 + "bevy_platform", 797 + "bevy_reflect", 798 + "crossbeam-channel", 799 + "log", 800 + "serde", 801 + ] 802 + 803 + [[package]] 804 + name = "bevy_transform" 805 + version = "0.17.3" 806 + source = "registry+https://github.com/rust-lang/crates.io-index" 807 + checksum = "b41fabfeaa53f51ff5ccf4d87e66836293159d50d21f6d3e16c93efb7c30f969" 808 + dependencies = [ 809 + "bevy_app", 810 + "bevy_ecs", 811 + "bevy_log", 812 + "bevy_math", 813 + "bevy_reflect", 814 + "bevy_tasks", 815 + "bevy_utils", 816 + "derive_more", 817 + "serde", 818 + "thiserror 2.0.17", 819 + ] 820 + 821 + [[package]] 822 + name = "bevy_utils" 823 + version = "0.17.3" 824 + source = "registry+https://github.com/rust-lang/crates.io-index" 825 + checksum = "789d04f88c764877a4552e07745b402dbc45f5d0545e6d102558f2f1752a1d89" 826 + dependencies = [ 827 + "bevy_platform", 828 + "disqualified", 829 + "thread_local", 830 + ] 831 + 832 + [[package]] 833 + name = "bevy_window" 834 + version = "0.17.3" 835 + source = "registry+https://github.com/rust-lang/crates.io-index" 836 + checksum = "8ae54ec7a0fc344278592a688a01b57b32182abc3ca7d47040773c4cbc2e15e0" 837 + dependencies = [ 838 + "bevy_app", 839 + "bevy_ecs", 840 + "bevy_input", 841 + "bevy_math", 842 + "bevy_platform", 843 + "bevy_reflect", 844 + "log", 845 + "raw-window-handle", 846 + "serde", 847 + ] 848 + 849 + [[package]] 850 + name = "bit-set" 851 + version = "0.5.3" 852 + source = "registry+https://github.com/rust-lang/crates.io-index" 853 + checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" 854 + dependencies = [ 855 + "bit-vec", 856 + ] 857 + 858 + [[package]] 859 + name = "bit-vec" 860 + version = "0.6.3" 861 + source = "registry+https://github.com/rust-lang/crates.io-index" 862 + checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" 863 + 864 + [[package]] 865 + name = "bitflags" 866 + version = "1.3.2" 867 + source = "registry+https://github.com/rust-lang/crates.io-index" 868 + checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 869 + 870 + [[package]] 871 + name = "bitflags" 872 + version = "2.10.0" 873 + source = "registry+https://github.com/rust-lang/crates.io-index" 874 + checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" 875 + dependencies = [ 876 + "serde_core", 877 + ] 878 + 879 + [[package]] 880 + name = "blake3" 881 + version = "1.8.2" 882 + source = "registry+https://github.com/rust-lang/crates.io-index" 883 + checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" 884 + dependencies = [ 885 + "arrayref", 886 + "arrayvec", 887 + "cc", 888 + "cfg-if", 889 + "constant_time_eq", 890 + ] 891 + 892 + [[package]] 893 + name = "block-buffer" 894 + version = "0.10.4" 895 + source = "registry+https://github.com/rust-lang/crates.io-index" 896 + checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 897 + dependencies = [ 898 + "generic-array", 899 + ] 900 + 901 + [[package]] 902 + name = "block2" 903 + version = "0.6.2" 904 + source = "registry+https://github.com/rust-lang/crates.io-index" 905 + checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" 906 + dependencies = [ 907 + "objc2", 908 + ] 909 + 910 + [[package]] 911 + name = "blocking" 912 + version = "1.6.2" 913 + source = "registry+https://github.com/rust-lang/crates.io-index" 914 + checksum = "e83f8d02be6967315521be875afa792a316e28d57b5a2d401897e2a7921b7f21" 915 + dependencies = [ 916 + "async-channel", 917 + "async-task", 918 + "futures-io", 919 + "futures-lite", 920 + "piper", 921 + ] 922 + 923 + [[package]] 924 + name = "bumpalo" 925 + version = "3.19.1" 926 + source = "registry+https://github.com/rust-lang/crates.io-index" 927 + checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510" 928 + 929 + [[package]] 930 + name = "bytemuck" 931 + version = "1.24.0" 932 + source = "registry+https://github.com/rust-lang/crates.io-index" 933 + checksum = "1fbdf580320f38b612e485521afda1ee26d10cc9884efaaa750d383e13e3c5f4" 934 + dependencies = [ 935 + "bytemuck_derive", 936 + ] 937 + 938 + [[package]] 939 + name = "bytemuck_derive" 940 + version = "1.10.2" 941 + source = "registry+https://github.com/rust-lang/crates.io-index" 942 + checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" 943 + dependencies = [ 944 + "proc-macro2", 945 + "quote", 946 + "syn 2.0.112", 947 + ] 948 + 949 + [[package]] 950 + name = "byteorder" 951 + version = "1.5.0" 952 + source = "registry+https://github.com/rust-lang/crates.io-index" 953 + checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" 954 + 955 + [[package]] 956 + name = "byteorder-lite" 957 + version = "0.1.0" 958 + source = "registry+https://github.com/rust-lang/crates.io-index" 959 + checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" 960 + 961 + [[package]] 962 + name = "bytes" 963 + version = "1.11.0" 964 + source = "registry+https://github.com/rust-lang/crates.io-index" 965 + checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3" 966 + 967 + [[package]] 968 + name = "castaway" 969 + version = "0.2.4" 970 + source = "registry+https://github.com/rust-lang/crates.io-index" 971 + checksum = "dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a" 972 + dependencies = [ 973 + "rustversion", 974 + ] 975 + 976 + [[package]] 977 + name = "cc" 978 + version = "1.2.51" 979 + source = "registry+https://github.com/rust-lang/crates.io-index" 980 + checksum = "7a0aeaff4ff1a90589618835a598e545176939b97874f7abc7851caa0618f203" 981 + dependencies = [ 982 + "find-msvc-tools", 983 + "jobserver", 984 + "libc", 985 + "shlex", 986 + ] 987 + 988 + [[package]] 989 + name = "cesu8" 990 + version = "1.1.0" 991 + source = "registry+https://github.com/rust-lang/crates.io-index" 992 + checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 993 + 994 + [[package]] 995 + name = "cfg-if" 996 + version = "1.0.4" 997 + source = "registry+https://github.com/rust-lang/crates.io-index" 998 + checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" 999 + 1000 + [[package]] 1001 + name = "cfg_aliases" 1002 + version = "0.2.1" 1003 + source = "registry+https://github.com/rust-lang/crates.io-index" 1004 + checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" 1005 + 1006 + [[package]] 1007 + name = "color-eyre" 1008 + version = "0.6.5" 1009 + source = "registry+https://github.com/rust-lang/crates.io-index" 1010 + checksum = "e5920befb47832a6d61ee3a3a846565cfa39b331331e68a3b1d1116630f2f26d" 1011 + dependencies = [ 1012 + "backtrace", 1013 + "color-spantrace", 1014 + "eyre", 1015 + "indenter", 1016 + "once_cell", 1017 + "owo-colors", 1018 + "tracing-error", 1019 + ] 1020 + 1021 + [[package]] 1022 + name = "color-spantrace" 1023 + version = "0.3.0" 1024 + source = "registry+https://github.com/rust-lang/crates.io-index" 1025 + checksum = "b8b88ea9df13354b55bc7234ebcce36e6ef896aca2e42a15de9e10edce01b427" 1026 + dependencies = [ 1027 + "once_cell", 1028 + "owo-colors", 1029 + "tracing-core", 1030 + "tracing-error", 1031 + ] 1032 + 1033 + [[package]] 1034 + name = "combine" 1035 + version = "4.6.7" 1036 + source = "registry+https://github.com/rust-lang/crates.io-index" 1037 + checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" 1038 + dependencies = [ 1039 + "bytes", 1040 + "memchr", 1041 + ] 1042 + 1043 + [[package]] 1044 + name = "compact_str" 1045 + version = "0.9.0" 1046 + source = "registry+https://github.com/rust-lang/crates.io-index" 1047 + checksum = "3fdb1325a1cece981e8a296ab8f0f9b63ae357bd0784a9faaf548cc7b480707a" 1048 + dependencies = [ 1049 + "castaway", 1050 + "cfg-if", 1051 + "itoa", 1052 + "rustversion", 1053 + "ryu", 1054 + "static_assertions", 1055 + ] 1056 + 1057 + [[package]] 1058 + name = "concurrent-queue" 1059 + version = "2.5.0" 1060 + source = "registry+https://github.com/rust-lang/crates.io-index" 1061 + checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" 1062 + dependencies = [ 1063 + "crossbeam-utils", 1064 + "portable-atomic", 1065 + ] 1066 + 1067 + [[package]] 1068 + name = "console_error_panic_hook" 1069 + version = "0.1.7" 1070 + source = "registry+https://github.com/rust-lang/crates.io-index" 1071 + checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" 1072 + dependencies = [ 1073 + "cfg-if", 1074 + "wasm-bindgen", 1075 + ] 1076 + 1077 + [[package]] 1078 + name = "const-fnv1a-hash" 1079 + version = "1.1.0" 1080 + source = "registry+https://github.com/rust-lang/crates.io-index" 1081 + checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" 1082 + 1083 + [[package]] 1084 + name = "const_panic" 1085 + version = "0.2.15" 1086 + source = "registry+https://github.com/rust-lang/crates.io-index" 1087 + checksum = "e262cdaac42494e3ae34c43969f9cdeb7da178bdb4b66fa6a1ea2edb4c8ae652" 1088 + dependencies = [ 1089 + "typewit", 1090 + ] 1091 + 1092 + [[package]] 1093 + name = "const_soft_float" 1094 + version = "0.1.4" 1095 + source = "registry+https://github.com/rust-lang/crates.io-index" 1096 + checksum = "87ca1caa64ef4ed453e68bb3db612e51cf1b2f5b871337f0fcab1c8f87cc3dff" 1097 + 1098 + [[package]] 1099 + name = "constant_time_eq" 1100 + version = "0.3.1" 1101 + source = "registry+https://github.com/rust-lang/crates.io-index" 1102 + checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" 1103 + 1104 + [[package]] 1105 + name = "constgebra" 1106 + version = "0.1.4" 1107 + source = "registry+https://github.com/rust-lang/crates.io-index" 1108 + checksum = "e1aaf9b65849a68662ac6c0810c8893a765c960b907dd7cfab9c4a50bf764fbc" 1109 + dependencies = [ 1110 + "const_soft_float", 1111 + ] 1112 + 1113 + [[package]] 1114 + name = "convert_case" 1115 + version = "0.10.0" 1116 + source = "registry+https://github.com/rust-lang/crates.io-index" 1117 + checksum = "633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9" 1118 + dependencies = [ 1119 + "unicode-segmentation", 1120 + ] 1121 + 1122 + [[package]] 1123 + name = "cpufeatures" 1124 + version = "0.2.17" 1125 + source = "registry+https://github.com/rust-lang/crates.io-index" 1126 + checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" 1127 + dependencies = [ 1128 + "libc", 1129 + ] 1130 + 1131 + [[package]] 1132 + name = "critical-section" 1133 + version = "1.2.0" 1134 + source = "registry+https://github.com/rust-lang/crates.io-index" 1135 + checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" 1136 + 1137 + [[package]] 1138 + name = "crossbeam-channel" 1139 + version = "0.5.15" 1140 + source = "registry+https://github.com/rust-lang/crates.io-index" 1141 + checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" 1142 + dependencies = [ 1143 + "crossbeam-utils", 1144 + ] 1145 + 1146 + [[package]] 1147 + name = "crossbeam-queue" 1148 + version = "0.3.12" 1149 + source = "registry+https://github.com/rust-lang/crates.io-index" 1150 + checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" 1151 + dependencies = [ 1152 + "crossbeam-utils", 1153 + ] 1154 + 1155 + [[package]] 1156 + name = "crossbeam-utils" 1157 + version = "0.8.21" 1158 + source = "registry+https://github.com/rust-lang/crates.io-index" 1159 + checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" 1160 + 1161 + [[package]] 1162 + name = "crossterm" 1163 + version = "0.29.0" 1164 + source = "registry+https://github.com/rust-lang/crates.io-index" 1165 + checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" 1166 + dependencies = [ 1167 + "bitflags 2.10.0", 1168 + "crossterm_winapi", 1169 + "derive_more", 1170 + "document-features", 1171 + "mio", 1172 + "parking_lot", 1173 + "rustix", 1174 + "signal-hook", 1175 + "signal-hook-mio", 1176 + "winapi", 1177 + ] 1178 + 1179 + [[package]] 1180 + name = "crossterm_winapi" 1181 + version = "0.9.1" 1182 + source = "registry+https://github.com/rust-lang/crates.io-index" 1183 + checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" 1184 + dependencies = [ 1185 + "winapi", 1186 + ] 1187 + 1188 + [[package]] 1189 + name = "crunchy" 1190 + version = "0.2.4" 1191 + source = "registry+https://github.com/rust-lang/crates.io-index" 1192 + checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" 1193 + 1194 + [[package]] 1195 + name = "crypto-common" 1196 + version = "0.1.7" 1197 + source = "registry+https://github.com/rust-lang/crates.io-index" 1198 + checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" 1199 + dependencies = [ 1200 + "generic-array", 1201 + "typenum", 1202 + ] 1203 + 1204 + [[package]] 1205 + name = "csscolorparser" 1206 + version = "0.6.2" 1207 + source = "registry+https://github.com/rust-lang/crates.io-index" 1208 + checksum = "eb2a7d3066da2de787b7f032c736763eb7ae5d355f81a68bab2675a96008b0bf" 1209 + dependencies = [ 1210 + "lab", 1211 + "phf", 1212 + ] 1213 + 1214 + [[package]] 1215 + name = "ctrlc" 1216 + version = "3.5.1" 1217 + source = "registry+https://github.com/rust-lang/crates.io-index" 1218 + checksum = "73736a89c4aff73035ba2ed2e565061954da00d4970fc9ac25dcc85a2a20d790" 1219 + dependencies = [ 1220 + "dispatch2", 1221 + "nix 0.30.1", 1222 + "windows-sys 0.61.2", 1223 + ] 1224 + 1225 + [[package]] 1226 + name = "darling" 1227 + version = "0.20.11" 1228 + source = "registry+https://github.com/rust-lang/crates.io-index" 1229 + checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" 1230 + dependencies = [ 1231 + "darling_core", 1232 + "darling_macro", 1233 + ] 1234 + 1235 + [[package]] 1236 + name = "darling_core" 1237 + version = "0.20.11" 1238 + source = "registry+https://github.com/rust-lang/crates.io-index" 1239 + checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" 1240 + dependencies = [ 1241 + "fnv", 1242 + "ident_case", 1243 + "proc-macro2", 1244 + "quote", 1245 + "strsim", 1246 + "syn 2.0.112", 1247 + ] 1248 + 1249 + [[package]] 1250 + name = "darling_macro" 1251 + version = "0.20.11" 1252 + source = "registry+https://github.com/rust-lang/crates.io-index" 1253 + checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" 1254 + dependencies = [ 1255 + "darling_core", 1256 + "quote", 1257 + "syn 2.0.112", 1258 + ] 1259 + 1260 + [[package]] 1261 + name = "deltae" 1262 + version = "0.3.2" 1263 + source = "registry+https://github.com/rust-lang/crates.io-index" 1264 + checksum = "5729f5117e208430e437df2f4843f5e5952997175992d1414f94c57d61e270b4" 1265 + 1266 + [[package]] 1267 + name = "deranged" 1268 + version = "0.5.5" 1269 + source = "registry+https://github.com/rust-lang/crates.io-index" 1270 + checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587" 1271 + dependencies = [ 1272 + "powerfmt", 1273 + ] 1274 + 1275 + [[package]] 1276 + name = "derive_more" 1277 + version = "2.1.1" 1278 + source = "registry+https://github.com/rust-lang/crates.io-index" 1279 + checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" 1280 + dependencies = [ 1281 + "derive_more-impl", 1282 + ] 1283 + 1284 + [[package]] 1285 + name = "derive_more-impl" 1286 + version = "2.1.1" 1287 + source = "registry+https://github.com/rust-lang/crates.io-index" 1288 + checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" 1289 + dependencies = [ 1290 + "convert_case", 1291 + "proc-macro2", 1292 + "quote", 1293 + "rustc_version", 1294 + "syn 2.0.112", 1295 + "unicode-xid", 1296 + ] 1297 + 1298 + [[package]] 1299 + name = "digest" 1300 + version = "0.10.7" 1301 + source = "registry+https://github.com/rust-lang/crates.io-index" 1302 + checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 1303 + dependencies = [ 1304 + "block-buffer", 1305 + "crypto-common", 1306 + ] 1307 + 1308 + [[package]] 1309 + name = "dispatch2" 1310 + version = "0.3.0" 1311 + source = "registry+https://github.com/rust-lang/crates.io-index" 1312 + checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec" 1313 + dependencies = [ 1314 + "bitflags 2.10.0", 1315 + "block2", 1316 + "libc", 1317 + "objc2", 1318 + ] 1319 + 1320 + [[package]] 1321 + name = "disqualified" 1322 + version = "1.0.0" 1323 + source = "registry+https://github.com/rust-lang/crates.io-index" 1324 + checksum = "c9c272297e804878a2a4b707cfcfc6d2328b5bb936944613b4fdf2b9269afdfd" 1325 + 1326 + [[package]] 1327 + name = "document-features" 1328 + version = "0.2.12" 1329 + source = "registry+https://github.com/rust-lang/crates.io-index" 1330 + checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" 1331 + dependencies = [ 1332 + "litrs", 1333 + ] 1334 + 1335 + [[package]] 1336 + name = "downcast-rs" 1337 + version = "2.0.2" 1338 + source = "registry+https://github.com/rust-lang/crates.io-index" 1339 + checksum = "117240f60069e65410b3ae1bb213295bd828f707b5bec6596a1afc8793ce0cbc" 1340 + 1341 + [[package]] 1342 + name = "either" 1343 + version = "1.15.0" 1344 + source = "registry+https://github.com/rust-lang/crates.io-index" 1345 + checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" 1346 + 1347 + [[package]] 1348 + name = "encase" 1349 + version = "0.11.2" 1350 + source = "registry+https://github.com/rust-lang/crates.io-index" 1351 + checksum = "02ba239319a4f60905966390f5e52799d868103a533bb7e27822792332504ddd" 1352 + dependencies = [ 1353 + "const_panic", 1354 + "encase_derive", 1355 + "thiserror 2.0.17", 1356 + ] 1357 + 1358 + [[package]] 1359 + name = "encase_derive" 1360 + version = "0.11.2" 1361 + source = "registry+https://github.com/rust-lang/crates.io-index" 1362 + checksum = "5223d6c647f09870553224f6e37261fe5567bc5a4f4cf13ed337476e79990f2f" 1363 + dependencies = [ 1364 + "encase_derive_impl", 1365 + ] 1366 + 1367 + [[package]] 1368 + name = "encase_derive_impl" 1369 + version = "0.11.2" 1370 + source = "registry+https://github.com/rust-lang/crates.io-index" 1371 + checksum = "1796db3d892515842ca2dfb11124c4bb4a9e58d9f2c5c1072e5bca1b2334507b" 1372 + dependencies = [ 1373 + "proc-macro2", 1374 + "quote", 1375 + "syn 2.0.112", 1376 + ] 1377 + 1378 + [[package]] 1379 + name = "equivalent" 1380 + version = "1.0.2" 1381 + source = "registry+https://github.com/rust-lang/crates.io-index" 1382 + checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" 1383 + 1384 + [[package]] 1385 + name = "erased-serde" 1386 + version = "0.4.9" 1387 + source = "registry+https://github.com/rust-lang/crates.io-index" 1388 + checksum = "89e8918065695684b2b0702da20382d5ae6065cf3327bc2d6436bd49a71ce9f3" 1389 + dependencies = [ 1390 + "serde", 1391 + "serde_core", 1392 + "typeid", 1393 + ] 1394 + 1395 + [[package]] 1396 + name = "errno" 1397 + version = "0.3.14" 1398 + source = "registry+https://github.com/rust-lang/crates.io-index" 1399 + checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" 1400 + dependencies = [ 1401 + "libc", 1402 + "windows-sys 0.61.2", 1403 + ] 1404 + 1405 + [[package]] 1406 + name = "euclid" 1407 + version = "0.22.11" 1408 + source = "registry+https://github.com/rust-lang/crates.io-index" 1409 + checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48" 1410 + dependencies = [ 1411 + "num-traits", 1412 + ] 1413 + 1414 + [[package]] 1415 + name = "event-listener" 1416 + version = "5.4.1" 1417 + source = "registry+https://github.com/rust-lang/crates.io-index" 1418 + checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" 1419 + dependencies = [ 1420 + "concurrent-queue", 1421 + "parking", 1422 + "pin-project-lite", 1423 + ] 1424 + 1425 + [[package]] 1426 + name = "event-listener-strategy" 1427 + version = "0.5.4" 1428 + source = "registry+https://github.com/rust-lang/crates.io-index" 1429 + checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" 1430 + dependencies = [ 1431 + "event-listener", 1432 + "pin-project-lite", 1433 + ] 1434 + 1435 + [[package]] 1436 + name = "eyre" 1437 + version = "0.6.12" 1438 + source = "registry+https://github.com/rust-lang/crates.io-index" 1439 + checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" 1440 + dependencies = [ 1441 + "indenter", 1442 + "once_cell", 1443 + ] 1444 + 1445 + [[package]] 1446 + name = "fancy-regex" 1447 + version = "0.11.0" 1448 + source = "registry+https://github.com/rust-lang/crates.io-index" 1449 + checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2" 1450 + dependencies = [ 1451 + "bit-set", 1452 + "regex", 1453 + ] 1454 + 1455 + [[package]] 1456 + name = "fastrand" 1457 + version = "2.3.0" 1458 + source = "registry+https://github.com/rust-lang/crates.io-index" 1459 + checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 1460 + 1461 + [[package]] 1462 + name = "filedescriptor" 1463 + version = "0.8.3" 1464 + source = "registry+https://github.com/rust-lang/crates.io-index" 1465 + checksum = "e40758ed24c9b2eeb76c35fb0aebc66c626084edd827e07e1552279814c6682d" 1466 + dependencies = [ 1467 + "libc", 1468 + "thiserror 1.0.69", 1469 + "winapi", 1470 + ] 1471 + 1472 + [[package]] 1473 + name = "find-msvc-tools" 1474 + version = "0.1.6" 1475 + source = "registry+https://github.com/rust-lang/crates.io-index" 1476 + checksum = "645cbb3a84e60b7531617d5ae4e57f7e27308f6445f5abf653209ea76dec8dff" 1477 + 1478 + [[package]] 1479 + name = "finl_unicode" 1480 + version = "1.4.0" 1481 + source = "registry+https://github.com/rust-lang/crates.io-index" 1482 + checksum = "9844ddc3a6e533d62bba727eb6c28b5d360921d5175e9ff0f1e621a5c590a4d5" 1483 + 1484 + [[package]] 1485 + name = "fixedbitset" 1486 + version = "0.4.2" 1487 + source = "registry+https://github.com/rust-lang/crates.io-index" 1488 + checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" 1489 + 1490 + [[package]] 1491 + name = "fixedbitset" 1492 + version = "0.5.7" 1493 + source = "registry+https://github.com/rust-lang/crates.io-index" 1494 + checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" 1495 + 1496 + [[package]] 1497 + name = "fnv" 1498 + version = "1.0.7" 1499 + source = "registry+https://github.com/rust-lang/crates.io-index" 1500 + checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 1501 + 1502 + [[package]] 1503 + name = "foldhash" 1504 + version = "0.2.0" 1505 + source = "registry+https://github.com/rust-lang/crates.io-index" 1506 + checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" 1507 + 1508 + [[package]] 1509 + name = "futures-channel" 1510 + version = "0.3.31" 1511 + source = "registry+https://github.com/rust-lang/crates.io-index" 1512 + checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" 1513 + dependencies = [ 1514 + "futures-core", 1515 + ] 1516 + 1517 + [[package]] 1518 + name = "futures-core" 1519 + version = "0.3.31" 1520 + source = "registry+https://github.com/rust-lang/crates.io-index" 1521 + checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" 1522 + 1523 + [[package]] 1524 + name = "futures-io" 1525 + version = "0.3.31" 1526 + source = "registry+https://github.com/rust-lang/crates.io-index" 1527 + checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" 1528 + 1529 + [[package]] 1530 + name = "futures-lite" 1531 + version = "2.6.1" 1532 + source = "registry+https://github.com/rust-lang/crates.io-index" 1533 + checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" 1534 + dependencies = [ 1535 + "fastrand", 1536 + "futures-core", 1537 + "futures-io", 1538 + "parking", 1539 + "pin-project-lite", 1540 + ] 1541 + 1542 + [[package]] 1543 + name = "generic-array" 1544 + version = "0.14.7" 1545 + source = "registry+https://github.com/rust-lang/crates.io-index" 1546 + checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" 1547 + dependencies = [ 1548 + "typenum", 1549 + "version_check", 1550 + ] 1551 + 1552 + [[package]] 1553 + name = "getrandom" 1554 + version = "0.3.4" 1555 + source = "registry+https://github.com/rust-lang/crates.io-index" 1556 + checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" 1557 + dependencies = [ 1558 + "cfg-if", 1559 + "js-sys", 1560 + "libc", 1561 + "r-efi", 1562 + "wasip2", 1563 + "wasm-bindgen", 1564 + ] 1565 + 1566 + [[package]] 1567 + name = "gimli" 1568 + version = "0.32.3" 1569 + source = "registry+https://github.com/rust-lang/crates.io-index" 1570 + checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7" 1571 + 1572 + [[package]] 1573 + name = "glam" 1574 + version = "0.30.9" 1575 + source = "registry+https://github.com/rust-lang/crates.io-index" 1576 + checksum = "bd47b05dddf0005d850e5644cae7f2b14ac3df487979dbfff3b56f20b1a6ae46" 1577 + dependencies = [ 1578 + "bytemuck", 1579 + "libm", 1580 + "rand 0.9.2", 1581 + "serde_core", 1582 + ] 1583 + 1584 + [[package]] 1585 + name = "guillotiere" 1586 + version = "0.6.2" 1587 + source = "registry+https://github.com/rust-lang/crates.io-index" 1588 + checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782" 1589 + dependencies = [ 1590 + "euclid", 1591 + "svg_fmt", 1592 + ] 1593 + 1594 + [[package]] 1595 + name = "half" 1596 + version = "2.7.1" 1597 + source = "registry+https://github.com/rust-lang/crates.io-index" 1598 + checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" 1599 + dependencies = [ 1600 + "cfg-if", 1601 + "crunchy", 1602 + "zerocopy", 1603 + ] 1604 + 1605 + [[package]] 1606 + name = "hash32" 1607 + version = "0.3.1" 1608 + source = "registry+https://github.com/rust-lang/crates.io-index" 1609 + checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" 1610 + dependencies = [ 1611 + "byteorder", 1612 + ] 1613 + 1614 + [[package]] 1615 + name = "hashbrown" 1616 + version = "0.16.1" 1617 + source = "registry+https://github.com/rust-lang/crates.io-index" 1618 + checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" 1619 + dependencies = [ 1620 + "allocator-api2", 1621 + "equivalent", 1622 + "foldhash", 1623 + "serde", 1624 + "serde_core", 1625 + ] 1626 + 1627 + [[package]] 1628 + name = "heapless" 1629 + version = "0.8.0" 1630 + source = "registry+https://github.com/rust-lang/crates.io-index" 1631 + checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" 1632 + dependencies = [ 1633 + "hash32", 1634 + "portable-atomic", 1635 + "stable_deref_trait", 1636 + ] 1637 + 1638 + [[package]] 1639 + name = "heck" 1640 + version = "0.5.0" 1641 + source = "registry+https://github.com/rust-lang/crates.io-index" 1642 + checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" 1643 + 1644 + [[package]] 1645 + name = "hermit-abi" 1646 + version = "0.5.2" 1647 + source = "registry+https://github.com/rust-lang/crates.io-index" 1648 + checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" 1649 + 1650 + [[package]] 1651 + name = "hex" 1652 + version = "0.4.3" 1653 + source = "registry+https://github.com/rust-lang/crates.io-index" 1654 + checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 1655 + 1656 + [[package]] 1657 + name = "hexasphere" 1658 + version = "16.0.0" 1659 + source = "registry+https://github.com/rust-lang/crates.io-index" 1660 + checksum = "29a164ceff4500f2a72b1d21beaa8aa8ad83aec2b641844c659b190cb3ea2e0b" 1661 + dependencies = [ 1662 + "constgebra", 1663 + "glam", 1664 + "tinyvec", 1665 + ] 1666 + 1667 + [[package]] 1668 + name = "ident_case" 1669 + version = "1.0.1" 1670 + source = "registry+https://github.com/rust-lang/crates.io-index" 1671 + checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 1672 + 1673 + [[package]] 1674 + name = "image" 1675 + version = "0.25.9" 1676 + source = "registry+https://github.com/rust-lang/crates.io-index" 1677 + checksum = "e6506c6c10786659413faa717ceebcb8f70731c0a60cbae39795fdf114519c1a" 1678 + dependencies = [ 1679 + "bytemuck", 1680 + "byteorder-lite", 1681 + "moxcms", 1682 + "num-traits", 1683 + ] 1684 + 1685 + [[package]] 1686 + name = "indenter" 1687 + version = "0.3.4" 1688 + source = "registry+https://github.com/rust-lang/crates.io-index" 1689 + checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5" 1690 + 1691 + [[package]] 1692 + name = "indexmap" 1693 + version = "2.12.1" 1694 + source = "registry+https://github.com/rust-lang/crates.io-index" 1695 + checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" 1696 + dependencies = [ 1697 + "equivalent", 1698 + "hashbrown", 1699 + ] 1700 + 1701 + [[package]] 1702 + name = "indoc" 1703 + version = "2.0.7" 1704 + source = "registry+https://github.com/rust-lang/crates.io-index" 1705 + checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706" 1706 + dependencies = [ 1707 + "rustversion", 1708 + ] 1709 + 1710 + [[package]] 1711 + name = "instability" 1712 + version = "0.3.10" 1713 + source = "registry+https://github.com/rust-lang/crates.io-index" 1714 + checksum = "6778b0196eefee7df739db78758e5cf9b37412268bfa5650bfeed028aed20d9c" 1715 + dependencies = [ 1716 + "darling", 1717 + "indoc", 1718 + "proc-macro2", 1719 + "quote", 1720 + "syn 2.0.112", 1721 + ] 1722 + 1723 + [[package]] 1724 + name = "inventory" 1725 + version = "0.3.21" 1726 + source = "registry+https://github.com/rust-lang/crates.io-index" 1727 + checksum = "bc61209c082fbeb19919bee74b176221b27223e27b65d781eb91af24eb1fb46e" 1728 + dependencies = [ 1729 + "rustversion", 1730 + ] 1731 + 1732 + [[package]] 1733 + name = "itertools" 1734 + version = "0.13.0" 1735 + source = "registry+https://github.com/rust-lang/crates.io-index" 1736 + checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" 1737 + dependencies = [ 1738 + "either", 1739 + ] 1740 + 1741 + [[package]] 1742 + name = "itertools" 1743 + version = "0.14.0" 1744 + source = "registry+https://github.com/rust-lang/crates.io-index" 1745 + checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" 1746 + dependencies = [ 1747 + "either", 1748 + ] 1749 + 1750 + [[package]] 1751 + name = "itoa" 1752 + version = "1.0.17" 1753 + source = "registry+https://github.com/rust-lang/crates.io-index" 1754 + checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" 1755 + 1756 + [[package]] 1757 + name = "jni" 1758 + version = "0.21.1" 1759 + source = "registry+https://github.com/rust-lang/crates.io-index" 1760 + checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" 1761 + dependencies = [ 1762 + "cesu8", 1763 + "cfg-if", 1764 + "combine", 1765 + "jni-sys", 1766 + "log", 1767 + "thiserror 1.0.69", 1768 + "walkdir", 1769 + "windows-sys 0.45.0", 1770 + ] 1771 + 1772 + [[package]] 1773 + name = "jni-sys" 1774 + version = "0.3.0" 1775 + source = "registry+https://github.com/rust-lang/crates.io-index" 1776 + checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 1777 + 1778 + [[package]] 1779 + name = "jobserver" 1780 + version = "0.1.34" 1781 + source = "registry+https://github.com/rust-lang/crates.io-index" 1782 + checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" 1783 + dependencies = [ 1784 + "getrandom", 1785 + "libc", 1786 + ] 1787 + 1788 + [[package]] 1789 + name = "js-sys" 1790 + version = "0.3.83" 1791 + source = "registry+https://github.com/rust-lang/crates.io-index" 1792 + checksum = "464a3709c7f55f1f721e5389aa6ea4e3bc6aba669353300af094b29ffbdde1d8" 1793 + dependencies = [ 1794 + "once_cell", 1795 + "wasm-bindgen", 1796 + ] 1797 + 1798 + [[package]] 1799 + name = "kasuari" 1800 + version = "0.4.11" 1801 + source = "registry+https://github.com/rust-lang/crates.io-index" 1802 + checksum = "8fe90c1150662e858c7d5f945089b7517b0a80d8bf7ba4b1b5ffc984e7230a5b" 1803 + dependencies = [ 1804 + "hashbrown", 1805 + "portable-atomic", 1806 + "thiserror 2.0.17", 1807 + ] 1808 + 1809 + [[package]] 1810 + name = "lab" 1811 + version = "0.11.0" 1812 + source = "registry+https://github.com/rust-lang/crates.io-index" 1813 + checksum = "bf36173d4167ed999940f804952e6b08197cae5ad5d572eb4db150ce8ad5d58f" 1814 + 1815 + [[package]] 1816 + name = "lazy_static" 1817 + version = "1.5.0" 1818 + source = "registry+https://github.com/rust-lang/crates.io-index" 1819 + checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" 1820 + 1821 + [[package]] 1822 + name = "libc" 1823 + version = "0.2.178" 1824 + source = "registry+https://github.com/rust-lang/crates.io-index" 1825 + checksum = "37c93d8daa9d8a012fd8ab92f088405fb202ea0b6ab73ee2482ae66af4f42091" 1826 + 1827 + [[package]] 1828 + name = "libm" 1829 + version = "0.2.15" 1830 + source = "registry+https://github.com/rust-lang/crates.io-index" 1831 + checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" 1832 + 1833 + [[package]] 1834 + name = "line-clipping" 1835 + version = "0.3.5" 1836 + source = "registry+https://github.com/rust-lang/crates.io-index" 1837 + checksum = "5f4de44e98ddbf09375cbf4d17714d18f39195f4f4894e8524501726fd9a8a4a" 1838 + dependencies = [ 1839 + "bitflags 2.10.0", 1840 + ] 1841 + 1842 + [[package]] 1843 + name = "linux-raw-sys" 1844 + version = "0.11.0" 1845 + source = "registry+https://github.com/rust-lang/crates.io-index" 1846 + checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" 1847 + 1848 + [[package]] 1849 + name = "litrs" 1850 + version = "1.0.0" 1851 + source = "registry+https://github.com/rust-lang/crates.io-index" 1852 + checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" 1853 + 1854 + [[package]] 1855 + name = "lock_api" 1856 + version = "0.4.14" 1857 + source = "registry+https://github.com/rust-lang/crates.io-index" 1858 + checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" 1859 + dependencies = [ 1860 + "scopeguard", 1861 + ] 1862 + 1863 + [[package]] 1864 + name = "log" 1865 + version = "0.4.29" 1866 + source = "registry+https://github.com/rust-lang/crates.io-index" 1867 + checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" 1868 + 1869 + [[package]] 1870 + name = "lru" 1871 + version = "0.16.2" 1872 + source = "registry+https://github.com/rust-lang/crates.io-index" 1873 + checksum = "96051b46fc183dc9cd4a223960ef37b9af631b55191852a8274bfef064cda20f" 1874 + dependencies = [ 1875 + "hashbrown", 1876 + ] 1877 + 1878 + [[package]] 1879 + name = "mac_address" 1880 + version = "1.1.8" 1881 + source = "registry+https://github.com/rust-lang/crates.io-index" 1882 + checksum = "c0aeb26bf5e836cc1c341c8106051b573f1766dfa05aa87f0b98be5e51b02303" 1883 + dependencies = [ 1884 + "nix 0.29.0", 1885 + "winapi", 1886 + ] 1887 + 1888 + [[package]] 1889 + name = "matchers" 1890 + version = "0.2.0" 1891 + source = "registry+https://github.com/rust-lang/crates.io-index" 1892 + checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" 1893 + dependencies = [ 1894 + "regex-automata", 1895 + ] 1896 + 1897 + [[package]] 1898 + name = "memchr" 1899 + version = "2.7.6" 1900 + source = "registry+https://github.com/rust-lang/crates.io-index" 1901 + checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" 1902 + 1903 + [[package]] 1904 + name = "memmem" 1905 + version = "0.1.1" 1906 + source = "registry+https://github.com/rust-lang/crates.io-index" 1907 + checksum = "a64a92489e2744ce060c349162be1c5f33c6969234104dbd99ddb5feb08b8c15" 1908 + 1909 + [[package]] 1910 + name = "memoffset" 1911 + version = "0.9.1" 1912 + source = "registry+https://github.com/rust-lang/crates.io-index" 1913 + checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" 1914 + dependencies = [ 1915 + "autocfg", 1916 + ] 1917 + 1918 + [[package]] 1919 + name = "minimal-lexical" 1920 + version = "0.2.1" 1921 + source = "registry+https://github.com/rust-lang/crates.io-index" 1922 + checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" 1923 + 1924 + [[package]] 1925 + name = "miniz_oxide" 1926 + version = "0.8.9" 1927 + source = "registry+https://github.com/rust-lang/crates.io-index" 1928 + checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" 1929 + dependencies = [ 1930 + "adler2", 1931 + ] 1932 + 1933 + [[package]] 1934 + name = "mio" 1935 + version = "1.1.1" 1936 + source = "registry+https://github.com/rust-lang/crates.io-index" 1937 + checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" 1938 + dependencies = [ 1939 + "libc", 1940 + "log", 1941 + "wasi", 1942 + "windows-sys 0.61.2", 1943 + ] 1944 + 1945 + [[package]] 1946 + name = "moxcms" 1947 + version = "0.7.11" 1948 + source = "registry+https://github.com/rust-lang/crates.io-index" 1949 + checksum = "ac9557c559cd6fc9867e122e20d2cbefc9ca29d80d027a8e39310920ed2f0a97" 1950 + dependencies = [ 1951 + "num-traits", 1952 + "pxfm", 1953 + ] 1954 + 1955 + [[package]] 1956 + name = "ndk" 1957 + version = "0.9.0" 1958 + source = "registry+https://github.com/rust-lang/crates.io-index" 1959 + checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" 1960 + dependencies = [ 1961 + "bitflags 2.10.0", 1962 + "jni-sys", 1963 + "log", 1964 + "ndk-sys", 1965 + "num_enum", 1966 + "thiserror 1.0.69", 1967 + ] 1968 + 1969 + [[package]] 1970 + name = "ndk-context" 1971 + version = "0.1.1" 1972 + source = "registry+https://github.com/rust-lang/crates.io-index" 1973 + checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" 1974 + 1975 + [[package]] 1976 + name = "ndk-sys" 1977 + version = "0.6.0+11769913" 1978 + source = "registry+https://github.com/rust-lang/crates.io-index" 1979 + checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" 1980 + dependencies = [ 1981 + "jni-sys", 1982 + ] 1983 + 1984 + [[package]] 1985 + name = "nix" 1986 + version = "0.29.0" 1987 + source = "registry+https://github.com/rust-lang/crates.io-index" 1988 + checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" 1989 + dependencies = [ 1990 + "bitflags 2.10.0", 1991 + "cfg-if", 1992 + "cfg_aliases", 1993 + "libc", 1994 + "memoffset", 1995 + ] 1996 + 1997 + [[package]] 1998 + name = "nix" 1999 + version = "0.30.1" 2000 + source = "registry+https://github.com/rust-lang/crates.io-index" 2001 + checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" 2002 + dependencies = [ 2003 + "bitflags 2.10.0", 2004 + "cfg-if", 2005 + "cfg_aliases", 2006 + "libc", 2007 + ] 2008 + 2009 + [[package]] 2010 + name = "nom" 2011 + version = "7.1.3" 2012 + source = "registry+https://github.com/rust-lang/crates.io-index" 2013 + checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" 2014 + dependencies = [ 2015 + "memchr", 2016 + "minimal-lexical", 2017 + ] 2018 + 2019 + [[package]] 2020 + name = "nonmax" 2021 + version = "0.5.5" 2022 + source = "registry+https://github.com/rust-lang/crates.io-index" 2023 + checksum = "610a5acd306ec67f907abe5567859a3c693fb9886eb1f012ab8f2a47bef3db51" 2024 + 2025 + [[package]] 2026 + name = "nu-ansi-term" 2027 + version = "0.50.3" 2028 + source = "registry+https://github.com/rust-lang/crates.io-index" 2029 + checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" 2030 + dependencies = [ 2031 + "windows-sys 0.61.2", 2032 + ] 2033 + 2034 + [[package]] 2035 + name = "num-conv" 2036 + version = "0.1.0" 2037 + source = "registry+https://github.com/rust-lang/crates.io-index" 2038 + checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" 2039 + 2040 + [[package]] 2041 + name = "num-derive" 2042 + version = "0.4.2" 2043 + source = "registry+https://github.com/rust-lang/crates.io-index" 2044 + checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" 2045 + dependencies = [ 2046 + "proc-macro2", 2047 + "quote", 2048 + "syn 2.0.112", 2049 + ] 2050 + 2051 + [[package]] 2052 + name = "num-traits" 2053 + version = "0.2.19" 2054 + source = "registry+https://github.com/rust-lang/crates.io-index" 2055 + checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" 2056 + dependencies = [ 2057 + "autocfg", 2058 + "libm", 2059 + ] 2060 + 2061 + [[package]] 2062 + name = "num_enum" 2063 + version = "0.7.5" 2064 + source = "registry+https://github.com/rust-lang/crates.io-index" 2065 + checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" 2066 + dependencies = [ 2067 + "num_enum_derive", 2068 + "rustversion", 2069 + ] 2070 + 2071 + [[package]] 2072 + name = "num_enum_derive" 2073 + version = "0.7.5" 2074 + source = "registry+https://github.com/rust-lang/crates.io-index" 2075 + checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" 2076 + dependencies = [ 2077 + "proc-macro-crate", 2078 + "proc-macro2", 2079 + "quote", 2080 + "syn 2.0.112", 2081 + ] 2082 + 2083 + [[package]] 2084 + name = "num_threads" 2085 + version = "0.1.7" 2086 + source = "registry+https://github.com/rust-lang/crates.io-index" 2087 + checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" 2088 + dependencies = [ 2089 + "libc", 2090 + ] 2091 + 2092 + [[package]] 2093 + name = "objc2" 2094 + version = "0.6.3" 2095 + source = "registry+https://github.com/rust-lang/crates.io-index" 2096 + checksum = "b7c2599ce0ec54857b29ce62166b0ed9b4f6f1a70ccc9a71165b6154caca8c05" 2097 + dependencies = [ 2098 + "objc2-encode", 2099 + ] 2100 + 2101 + [[package]] 2102 + name = "objc2-encode" 2103 + version = "4.1.0" 2104 + source = "registry+https://github.com/rust-lang/crates.io-index" 2105 + checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" 2106 + 2107 + [[package]] 2108 + name = "object" 2109 + version = "0.37.3" 2110 + source = "registry+https://github.com/rust-lang/crates.io-index" 2111 + checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe" 2112 + dependencies = [ 2113 + "memchr", 2114 + ] 2115 + 2116 + [[package]] 2117 + name = "once_cell" 2118 + version = "1.21.3" 2119 + source = "registry+https://github.com/rust-lang/crates.io-index" 2120 + checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 2121 + 2122 + [[package]] 2123 + name = "ordered-float" 2124 + version = "4.6.0" 2125 + source = "registry+https://github.com/rust-lang/crates.io-index" 2126 + checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951" 2127 + dependencies = [ 2128 + "num-traits", 2129 + ] 2130 + 2131 + [[package]] 2132 + name = "owo-colors" 2133 + version = "4.2.3" 2134 + source = "registry+https://github.com/rust-lang/crates.io-index" 2135 + checksum = "9c6901729fa79e91a0913333229e9ca5dc725089d1c363b2f4b4760709dc4a52" 2136 + 2137 + [[package]] 2138 + name = "parking" 2139 + version = "2.2.1" 2140 + source = "registry+https://github.com/rust-lang/crates.io-index" 2141 + checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" 2142 + 2143 + [[package]] 2144 + name = "parking_lot" 2145 + version = "0.12.5" 2146 + source = "registry+https://github.com/rust-lang/crates.io-index" 2147 + checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" 2148 + dependencies = [ 2149 + "lock_api", 2150 + "parking_lot_core", 2151 + ] 2152 + 2153 + [[package]] 2154 + name = "parking_lot_core" 2155 + version = "0.9.12" 2156 + source = "registry+https://github.com/rust-lang/crates.io-index" 2157 + checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" 2158 + dependencies = [ 2159 + "cfg-if", 2160 + "libc", 2161 + "redox_syscall", 2162 + "smallvec", 2163 + "windows-link", 2164 + ] 2165 + 2166 + [[package]] 2167 + name = "pest" 2168 + version = "2.8.4" 2169 + source = "registry+https://github.com/rust-lang/crates.io-index" 2170 + checksum = "cbcfd20a6d4eeba40179f05735784ad32bdaef05ce8e8af05f180d45bb3e7e22" 2171 + dependencies = [ 2172 + "memchr", 2173 + "ucd-trie", 2174 + ] 2175 + 2176 + [[package]] 2177 + name = "pest_derive" 2178 + version = "2.8.4" 2179 + source = "registry+https://github.com/rust-lang/crates.io-index" 2180 + checksum = "51f72981ade67b1ca6adc26ec221be9f463f2b5839c7508998daa17c23d94d7f" 2181 + dependencies = [ 2182 + "pest", 2183 + "pest_generator", 2184 + ] 2185 + 2186 + [[package]] 2187 + name = "pest_generator" 2188 + version = "2.8.4" 2189 + source = "registry+https://github.com/rust-lang/crates.io-index" 2190 + checksum = "dee9efd8cdb50d719a80088b76f81aec7c41ed6d522ee750178f83883d271625" 2191 + dependencies = [ 2192 + "pest", 2193 + "pest_meta", 2194 + "proc-macro2", 2195 + "quote", 2196 + "syn 2.0.112", 2197 + ] 2198 + 2199 + [[package]] 2200 + name = "pest_meta" 2201 + version = "2.8.4" 2202 + source = "registry+https://github.com/rust-lang/crates.io-index" 2203 + checksum = "bf1d70880e76bdc13ba52eafa6239ce793d85c8e43896507e43dd8984ff05b82" 2204 + dependencies = [ 2205 + "pest", 2206 + "sha2", 2207 + ] 2208 + 2209 + [[package]] 2210 + name = "phf" 2211 + version = "0.11.3" 2212 + source = "registry+https://github.com/rust-lang/crates.io-index" 2213 + checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" 2214 + dependencies = [ 2215 + "phf_macros", 2216 + "phf_shared", 2217 + ] 2218 + 2219 + [[package]] 2220 + name = "phf_codegen" 2221 + version = "0.11.3" 2222 + source = "registry+https://github.com/rust-lang/crates.io-index" 2223 + checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" 2224 + dependencies = [ 2225 + "phf_generator", 2226 + "phf_shared", 2227 + ] 2228 + 2229 + [[package]] 2230 + name = "phf_generator" 2231 + version = "0.11.3" 2232 + source = "registry+https://github.com/rust-lang/crates.io-index" 2233 + checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" 2234 + dependencies = [ 2235 + "phf_shared", 2236 + "rand 0.8.5", 2237 + ] 2238 + 2239 + [[package]] 2240 + name = "phf_macros" 2241 + version = "0.11.3" 2242 + source = "registry+https://github.com/rust-lang/crates.io-index" 2243 + checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" 2244 + dependencies = [ 2245 + "phf_generator", 2246 + "phf_shared", 2247 + "proc-macro2", 2248 + "quote", 2249 + "syn 2.0.112", 2250 + ] 2251 + 2252 + [[package]] 2253 + name = "phf_shared" 2254 + version = "0.11.3" 2255 + source = "registry+https://github.com/rust-lang/crates.io-index" 2256 + checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" 2257 + dependencies = [ 2258 + "siphasher", 2259 + ] 2260 + 2261 + [[package]] 2262 + name = "pin-project" 2263 + version = "1.1.10" 2264 + source = "registry+https://github.com/rust-lang/crates.io-index" 2265 + checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" 2266 + dependencies = [ 2267 + "pin-project-internal", 2268 + ] 2269 + 2270 + [[package]] 2271 + name = "pin-project-internal" 2272 + version = "1.1.10" 2273 + source = "registry+https://github.com/rust-lang/crates.io-index" 2274 + checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" 2275 + dependencies = [ 2276 + "proc-macro2", 2277 + "quote", 2278 + "syn 2.0.112", 2279 + ] 2280 + 2281 + [[package]] 2282 + name = "pin-project-lite" 2283 + version = "0.2.16" 2284 + source = "registry+https://github.com/rust-lang/crates.io-index" 2285 + checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" 2286 + 2287 + [[package]] 2288 + name = "piper" 2289 + version = "0.2.4" 2290 + source = "registry+https://github.com/rust-lang/crates.io-index" 2291 + checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" 2292 + dependencies = [ 2293 + "atomic-waker", 2294 + "fastrand", 2295 + "futures-io", 2296 + ] 2297 + 2298 + [[package]] 2299 + name = "polling" 2300 + version = "3.11.0" 2301 + source = "registry+https://github.com/rust-lang/crates.io-index" 2302 + checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" 2303 + dependencies = [ 2304 + "cfg-if", 2305 + "concurrent-queue", 2306 + "hermit-abi", 2307 + "pin-project-lite", 2308 + "rustix", 2309 + "windows-sys 0.61.2", 2310 + ] 2311 + 2312 + [[package]] 2313 + name = "portable-atomic" 2314 + version = "1.13.0" 2315 + source = "registry+https://github.com/rust-lang/crates.io-index" 2316 + checksum = "f89776e4d69bb58bc6993e99ffa1d11f228b839984854c7daeb5d37f87cbe950" 2317 + 2318 + [[package]] 2319 + name = "portable-atomic-util" 2320 + version = "0.2.4" 2321 + source = "registry+https://github.com/rust-lang/crates.io-index" 2322 + checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" 2323 + dependencies = [ 2324 + "portable-atomic", 2325 + ] 2326 + 2327 + [[package]] 2328 + name = "powerfmt" 2329 + version = "0.2.0" 2330 + source = "registry+https://github.com/rust-lang/crates.io-index" 2331 + checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" 2332 + 2333 + [[package]] 2334 + name = "ppv-lite86" 2335 + version = "0.2.21" 2336 + source = "registry+https://github.com/rust-lang/crates.io-index" 2337 + checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" 2338 + dependencies = [ 2339 + "zerocopy", 2340 + ] 2341 + 2342 + [[package]] 2343 + name = "proc-macro-crate" 2344 + version = "3.4.0" 2345 + source = "registry+https://github.com/rust-lang/crates.io-index" 2346 + checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" 2347 + dependencies = [ 2348 + "toml_edit", 2349 + ] 2350 + 2351 + [[package]] 2352 + name = "proc-macro2" 2353 + version = "1.0.104" 2354 + source = "registry+https://github.com/rust-lang/crates.io-index" 2355 + checksum = "9695f8df41bb4f3d222c95a67532365f569318332d03d5f3f67f37b20e6ebdf0" 2356 + dependencies = [ 2357 + "unicode-ident", 2358 + ] 2359 + 2360 + [[package]] 2361 + name = "pxfm" 2362 + version = "0.1.27" 2363 + source = "registry+https://github.com/rust-lang/crates.io-index" 2364 + checksum = "7186d3822593aa4393561d186d1393b3923e9d6163d3fbfd6e825e3e6cf3e6a8" 2365 + dependencies = [ 2366 + "num-traits", 2367 + ] 2368 + 2369 + [[package]] 2370 + name = "quote" 2371 + version = "1.0.42" 2372 + source = "registry+https://github.com/rust-lang/crates.io-index" 2373 + checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" 2374 + dependencies = [ 2375 + "proc-macro2", 2376 + ] 2377 + 2378 + [[package]] 2379 + name = "r-efi" 2380 + version = "5.3.0" 2381 + source = "registry+https://github.com/rust-lang/crates.io-index" 2382 + checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" 2383 + 2384 + [[package]] 2385 + name = "rand" 2386 + version = "0.8.5" 2387 + source = "registry+https://github.com/rust-lang/crates.io-index" 2388 + checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 2389 + dependencies = [ 2390 + "rand_core 0.6.4", 2391 + ] 2392 + 2393 + [[package]] 2394 + name = "rand" 2395 + version = "0.9.2" 2396 + source = "registry+https://github.com/rust-lang/crates.io-index" 2397 + checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" 2398 + dependencies = [ 2399 + "rand_chacha", 2400 + "rand_core 0.9.3", 2401 + ] 2402 + 2403 + [[package]] 2404 + name = "rand_chacha" 2405 + version = "0.9.0" 2406 + source = "registry+https://github.com/rust-lang/crates.io-index" 2407 + checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" 2408 + dependencies = [ 2409 + "ppv-lite86", 2410 + "rand_core 0.9.3", 2411 + ] 2412 + 2413 + [[package]] 2414 + name = "rand_core" 2415 + version = "0.6.4" 2416 + source = "registry+https://github.com/rust-lang/crates.io-index" 2417 + checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 2418 + 2419 + [[package]] 2420 + name = "rand_core" 2421 + version = "0.9.3" 2422 + source = "registry+https://github.com/rust-lang/crates.io-index" 2423 + checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" 2424 + dependencies = [ 2425 + "getrandom", 2426 + ] 2427 + 2428 + [[package]] 2429 + name = "rand_distr" 2430 + version = "0.5.1" 2431 + source = "registry+https://github.com/rust-lang/crates.io-index" 2432 + checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463" 2433 + dependencies = [ 2434 + "num-traits", 2435 + "rand 0.9.2", 2436 + ] 2437 + 2438 + [[package]] 2439 + name = "ratatui" 2440 + version = "0.30.0" 2441 + source = "registry+https://github.com/rust-lang/crates.io-index" 2442 + checksum = "d1ce67fb8ba4446454d1c8dbaeda0557ff5e94d39d5e5ed7f10a65eb4c8266bc" 2443 + dependencies = [ 2444 + "instability", 2445 + "ratatui-core", 2446 + "ratatui-crossterm", 2447 + "ratatui-macros", 2448 + "ratatui-termwiz", 2449 + "ratatui-widgets", 2450 + ] 2451 + 2452 + [[package]] 2453 + name = "ratatui-core" 2454 + version = "0.1.0" 2455 + source = "registry+https://github.com/rust-lang/crates.io-index" 2456 + checksum = "5ef8dea09a92caaf73bff7adb70b76162e5937524058a7e5bff37869cbbec293" 2457 + dependencies = [ 2458 + "bitflags 2.10.0", 2459 + "compact_str", 2460 + "hashbrown", 2461 + "indoc", 2462 + "itertools 0.14.0", 2463 + "kasuari", 2464 + "lru", 2465 + "strum", 2466 + "thiserror 2.0.17", 2467 + "unicode-segmentation", 2468 + "unicode-truncate", 2469 + "unicode-width", 2470 + ] 2471 + 2472 + [[package]] 2473 + name = "ratatui-crossterm" 2474 + version = "0.1.0" 2475 + source = "registry+https://github.com/rust-lang/crates.io-index" 2476 + checksum = "577c9b9f652b4c121fb25c6a391dd06406d3b092ba68827e6d2f09550edc54b3" 2477 + dependencies = [ 2478 + "cfg-if", 2479 + "crossterm", 2480 + "instability", 2481 + "ratatui-core", 2482 + ] 2483 + 2484 + [[package]] 2485 + name = "ratatui-macros" 2486 + version = "0.7.0" 2487 + source = "registry+https://github.com/rust-lang/crates.io-index" 2488 + checksum = "a7f1342a13e83e4bb9d0b793d0ea762be633f9582048c892ae9041ef39c936f4" 2489 + dependencies = [ 2490 + "ratatui-core", 2491 + "ratatui-widgets", 2492 + ] 2493 + 2494 + [[package]] 2495 + name = "ratatui-termwiz" 2496 + version = "0.1.0" 2497 + source = "registry+https://github.com/rust-lang/crates.io-index" 2498 + checksum = "0f76fe0bd0ed4295f0321b1676732e2454024c15a35d01904ddb315afd3d545c" 2499 + dependencies = [ 2500 + "ratatui-core", 2501 + "termwiz", 2502 + ] 2503 + 2504 + [[package]] 2505 + name = "ratatui-widgets" 2506 + version = "0.3.0" 2507 + source = "registry+https://github.com/rust-lang/crates.io-index" 2508 + checksum = "d7dbfa023cd4e604c2553483820c5fe8aa9d71a42eea5aa77c6e7f35756612db" 2509 + dependencies = [ 2510 + "bitflags 2.10.0", 2511 + "hashbrown", 2512 + "indoc", 2513 + "instability", 2514 + "itertools 0.14.0", 2515 + "line-clipping", 2516 + "ratatui-core", 2517 + "strum", 2518 + "time", 2519 + "unicode-segmentation", 2520 + "unicode-width", 2521 + ] 2522 + 2523 + [[package]] 2524 + name = "raw-window-handle" 2525 + version = "0.6.2" 2526 + source = "registry+https://github.com/rust-lang/crates.io-index" 2527 + checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" 2528 + 2529 + [[package]] 2530 + name = "rectangle-pack" 2531 + version = "0.4.2" 2532 + source = "registry+https://github.com/rust-lang/crates.io-index" 2533 + checksum = "a0d463f2884048e7153449a55166f91028d5b0ea53c79377099ce4e8cf0cf9bb" 2534 + 2535 + [[package]] 2536 + name = "redox_syscall" 2537 + version = "0.5.18" 2538 + source = "registry+https://github.com/rust-lang/crates.io-index" 2539 + checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" 2540 + dependencies = [ 2541 + "bitflags 2.10.0", 2542 + ] 2543 + 2544 + [[package]] 2545 + name = "regex" 2546 + version = "1.12.2" 2547 + source = "registry+https://github.com/rust-lang/crates.io-index" 2548 + checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" 2549 + dependencies = [ 2550 + "aho-corasick", 2551 + "memchr", 2552 + "regex-automata", 2553 + "regex-syntax", 2554 + ] 2555 + 2556 + [[package]] 2557 + name = "regex-automata" 2558 + version = "0.4.13" 2559 + source = "registry+https://github.com/rust-lang/crates.io-index" 2560 + checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" 2561 + dependencies = [ 2562 + "aho-corasick", 2563 + "memchr", 2564 + "regex-syntax", 2565 + ] 2566 + 2567 + [[package]] 2568 + name = "regex-syntax" 2569 + version = "0.8.8" 2570 + source = "registry+https://github.com/rust-lang/crates.io-index" 2571 + checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" 2572 + 2573 + [[package]] 2574 + name = "ron" 2575 + version = "0.10.1" 2576 + source = "registry+https://github.com/rust-lang/crates.io-index" 2577 + checksum = "beceb6f7bf81c73e73aeef6dd1356d9a1b2b4909e1f0fc3e59b034f9572d7b7f" 2578 + dependencies = [ 2579 + "base64", 2580 + "bitflags 2.10.0", 2581 + "serde", 2582 + "serde_derive", 2583 + "unicode-ident", 2584 + ] 2585 + 2586 + [[package]] 2587 + name = "rustc-demangle" 2588 + version = "0.1.26" 2589 + source = "registry+https://github.com/rust-lang/crates.io-index" 2590 + checksum = "56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace" 2591 + 2592 + [[package]] 2593 + name = "rustc_version" 2594 + version = "0.4.1" 2595 + source = "registry+https://github.com/rust-lang/crates.io-index" 2596 + checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" 2597 + dependencies = [ 2598 + "semver", 2599 + ] 2600 + 2601 + [[package]] 2602 + name = "rustix" 2603 + version = "1.1.3" 2604 + source = "registry+https://github.com/rust-lang/crates.io-index" 2605 + checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" 2606 + dependencies = [ 2607 + "bitflags 2.10.0", 2608 + "errno", 2609 + "libc", 2610 + "linux-raw-sys", 2611 + "windows-sys 0.61.2", 2612 + ] 2613 + 2614 + [[package]] 2615 + name = "rustversion" 2616 + version = "1.0.22" 2617 + source = "registry+https://github.com/rust-lang/crates.io-index" 2618 + checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" 2619 + 2620 + [[package]] 2621 + name = "ryu" 2622 + version = "1.0.22" 2623 + source = "registry+https://github.com/rust-lang/crates.io-index" 2624 + checksum = "a50f4cf475b65d88e057964e0e9bb1f0aa9bbb2036dc65c64596b42932536984" 2625 + 2626 + [[package]] 2627 + name = "same-file" 2628 + version = "1.0.6" 2629 + source = "registry+https://github.com/rust-lang/crates.io-index" 2630 + checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 2631 + dependencies = [ 2632 + "winapi-util", 2633 + ] 2634 + 2635 + [[package]] 2636 + name = "scopeguard" 2637 + version = "1.2.0" 2638 + source = "registry+https://github.com/rust-lang/crates.io-index" 2639 + checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 2640 + 2641 + [[package]] 2642 + name = "semver" 2643 + version = "1.0.27" 2644 + source = "registry+https://github.com/rust-lang/crates.io-index" 2645 + checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" 2646 + 2647 + [[package]] 2648 + name = "serde" 2649 + version = "1.0.228" 2650 + source = "registry+https://github.com/rust-lang/crates.io-index" 2651 + checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" 2652 + dependencies = [ 2653 + "serde_core", 2654 + "serde_derive", 2655 + ] 2656 + 2657 + [[package]] 2658 + name = "serde_core" 2659 + version = "1.0.228" 2660 + source = "registry+https://github.com/rust-lang/crates.io-index" 2661 + checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" 2662 + dependencies = [ 2663 + "serde_derive", 2664 + ] 2665 + 2666 + [[package]] 2667 + name = "serde_derive" 2668 + version = "1.0.228" 2669 + source = "registry+https://github.com/rust-lang/crates.io-index" 2670 + checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" 2671 + dependencies = [ 2672 + "proc-macro2", 2673 + "quote", 2674 + "syn 2.0.112", 2675 + ] 2676 + 2677 + [[package]] 2678 + name = "sha2" 2679 + version = "0.10.9" 2680 + source = "registry+https://github.com/rust-lang/crates.io-index" 2681 + checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" 2682 + dependencies = [ 2683 + "cfg-if", 2684 + "cpufeatures", 2685 + "digest", 2686 + ] 2687 + 2688 + [[package]] 2689 + name = "sharded-slab" 2690 + version = "0.1.7" 2691 + source = "registry+https://github.com/rust-lang/crates.io-index" 2692 + checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" 2693 + dependencies = [ 2694 + "lazy_static", 2695 + ] 2696 + 2697 + [[package]] 2698 + name = "shlex" 2699 + version = "1.3.0" 2700 + source = "registry+https://github.com/rust-lang/crates.io-index" 2701 + checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" 2702 + 2703 + [[package]] 2704 + name = "signal-hook" 2705 + version = "0.3.18" 2706 + source = "registry+https://github.com/rust-lang/crates.io-index" 2707 + checksum = "d881a16cf4426aa584979d30bd82cb33429027e42122b169753d6ef1085ed6e2" 2708 + dependencies = [ 2709 + "libc", 2710 + "signal-hook-registry", 2711 + ] 2712 + 2713 + [[package]] 2714 + name = "signal-hook-mio" 2715 + version = "0.2.5" 2716 + source = "registry+https://github.com/rust-lang/crates.io-index" 2717 + checksum = "b75a19a7a740b25bc7944bdee6172368f988763b744e3d4dfe753f6b4ece40cc" 2718 + dependencies = [ 2719 + "libc", 2720 + "mio", 2721 + "signal-hook", 2722 + ] 2723 + 2724 + [[package]] 2725 + name = "signal-hook-registry" 2726 + version = "1.4.8" 2727 + source = "registry+https://github.com/rust-lang/crates.io-index" 2728 + checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" 2729 + dependencies = [ 2730 + "errno", 2731 + "libc", 2732 + ] 2733 + 2734 + [[package]] 2735 + name = "siphasher" 2736 + version = "1.0.1" 2737 + source = "registry+https://github.com/rust-lang/crates.io-index" 2738 + checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" 2739 + 2740 + [[package]] 2741 + name = "slab" 2742 + version = "0.4.11" 2743 + source = "registry+https://github.com/rust-lang/crates.io-index" 2744 + checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" 2745 + 2746 + [[package]] 2747 + name = "slotmap" 2748 + version = "1.1.1" 2749 + source = "registry+https://github.com/rust-lang/crates.io-index" 2750 + checksum = "bdd58c3c93c3d278ca835519292445cb4b0d4dc59ccfdf7ceadaab3f8aeb4038" 2751 + dependencies = [ 2752 + "version_check", 2753 + ] 2754 + 2755 + [[package]] 2756 + name = "smallvec" 2757 + version = "1.15.1" 2758 + source = "registry+https://github.com/rust-lang/crates.io-index" 2759 + checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" 2760 + 2761 + [[package]] 2762 + name = "smol_str" 2763 + version = "0.2.2" 2764 + source = "registry+https://github.com/rust-lang/crates.io-index" 2765 + checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" 2766 + dependencies = [ 2767 + "serde", 2768 + ] 2769 + 2770 + [[package]] 2771 + name = "spin" 2772 + version = "0.10.0" 2773 + source = "registry+https://github.com/rust-lang/crates.io-index" 2774 + checksum = "d5fe4ccb98d9c292d56fec89a5e07da7fc4cf0dc11e156b41793132775d3e591" 2775 + dependencies = [ 2776 + "portable-atomic", 2777 + ] 2778 + 2779 + [[package]] 2780 + name = "stable_deref_trait" 2781 + version = "1.2.1" 2782 + source = "registry+https://github.com/rust-lang/crates.io-index" 2783 + checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" 2784 + 2785 + [[package]] 2786 + name = "stackfuture" 2787 + version = "0.3.1" 2788 + source = "registry+https://github.com/rust-lang/crates.io-index" 2789 + checksum = "115beb9c69db2393ff10b75a1b8587a51716e5551d015001e55320ed279d32f9" 2790 + dependencies = [ 2791 + "const_panic", 2792 + ] 2793 + 2794 + [[package]] 2795 + name = "static_assertions" 2796 + version = "1.1.0" 2797 + source = "registry+https://github.com/rust-lang/crates.io-index" 2798 + checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 2799 + 2800 + [[package]] 2801 + name = "striker" 2802 + version = "0.1.0" 2803 + dependencies = [ 2804 + "bevy", 2805 + "bevy_ratatui", 2806 + "color-eyre", 2807 + "crossterm", 2808 + "ratatui", 2809 + ] 2810 + 2811 + [[package]] 2812 + name = "strsim" 2813 + version = "0.11.1" 2814 + source = "registry+https://github.com/rust-lang/crates.io-index" 2815 + checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" 2816 + 2817 + [[package]] 2818 + name = "strum" 2819 + version = "0.27.2" 2820 + source = "registry+https://github.com/rust-lang/crates.io-index" 2821 + checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf" 2822 + dependencies = [ 2823 + "strum_macros", 2824 + ] 2825 + 2826 + [[package]] 2827 + name = "strum_macros" 2828 + version = "0.27.2" 2829 + source = "registry+https://github.com/rust-lang/crates.io-index" 2830 + checksum = "7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7" 2831 + dependencies = [ 2832 + "heck", 2833 + "proc-macro2", 2834 + "quote", 2835 + "syn 2.0.112", 2836 + ] 2837 + 2838 + [[package]] 2839 + name = "svg_fmt" 2840 + version = "0.4.5" 2841 + source = "registry+https://github.com/rust-lang/crates.io-index" 2842 + checksum = "0193cc4331cfd2f3d2011ef287590868599a2f33c3e69bc22c1a3d3acf9e02fb" 2843 + 2844 + [[package]] 2845 + name = "syn" 2846 + version = "1.0.109" 2847 + source = "registry+https://github.com/rust-lang/crates.io-index" 2848 + checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 2849 + dependencies = [ 2850 + "proc-macro2", 2851 + "quote", 2852 + "unicode-ident", 2853 + ] 2854 + 2855 + [[package]] 2856 + name = "syn" 2857 + version = "2.0.112" 2858 + source = "registry+https://github.com/rust-lang/crates.io-index" 2859 + checksum = "21f182278bf2d2bcb3c88b1b08a37df029d71ce3d3ae26168e3c653b213b99d4" 2860 + dependencies = [ 2861 + "proc-macro2", 2862 + "quote", 2863 + "unicode-ident", 2864 + ] 2865 + 2866 + [[package]] 2867 + name = "terminfo" 2868 + version = "0.9.0" 2869 + source = "registry+https://github.com/rust-lang/crates.io-index" 2870 + checksum = "d4ea810f0692f9f51b382fff5893887bb4580f5fa246fde546e0b13e7fcee662" 2871 + dependencies = [ 2872 + "fnv", 2873 + "nom", 2874 + "phf", 2875 + "phf_codegen", 2876 + ] 2877 + 2878 + [[package]] 2879 + name = "termios" 2880 + version = "0.3.3" 2881 + source = "registry+https://github.com/rust-lang/crates.io-index" 2882 + checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b" 2883 + dependencies = [ 2884 + "libc", 2885 + ] 2886 + 2887 + [[package]] 2888 + name = "termwiz" 2889 + version = "0.23.3" 2890 + source = "registry+https://github.com/rust-lang/crates.io-index" 2891 + checksum = "4676b37242ccbd1aabf56edb093a4827dc49086c0ffd764a5705899e0f35f8f7" 2892 + dependencies = [ 2893 + "anyhow", 2894 + "base64", 2895 + "bitflags 2.10.0", 2896 + "fancy-regex", 2897 + "filedescriptor", 2898 + "finl_unicode", 2899 + "fixedbitset 0.4.2", 2900 + "hex", 2901 + "lazy_static", 2902 + "libc", 2903 + "log", 2904 + "memmem", 2905 + "nix 0.29.0", 2906 + "num-derive", 2907 + "num-traits", 2908 + "ordered-float", 2909 + "pest", 2910 + "pest_derive", 2911 + "phf", 2912 + "sha2", 2913 + "signal-hook", 2914 + "siphasher", 2915 + "terminfo", 2916 + "termios", 2917 + "thiserror 1.0.69", 2918 + "ucd-trie", 2919 + "unicode-segmentation", 2920 + "vtparse", 2921 + "wezterm-bidi", 2922 + "wezterm-blob-leases", 2923 + "wezterm-color-types", 2924 + "wezterm-dynamic", 2925 + "wezterm-input-types", 2926 + "winapi", 2927 + ] 2928 + 2929 + [[package]] 2930 + name = "thiserror" 2931 + version = "1.0.69" 2932 + source = "registry+https://github.com/rust-lang/crates.io-index" 2933 + checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" 2934 + dependencies = [ 2935 + "thiserror-impl 1.0.69", 2936 + ] 2937 + 2938 + [[package]] 2939 + name = "thiserror" 2940 + version = "2.0.17" 2941 + source = "registry+https://github.com/rust-lang/crates.io-index" 2942 + checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" 2943 + dependencies = [ 2944 + "thiserror-impl 2.0.17", 2945 + ] 2946 + 2947 + [[package]] 2948 + name = "thiserror-impl" 2949 + version = "1.0.69" 2950 + source = "registry+https://github.com/rust-lang/crates.io-index" 2951 + checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" 2952 + dependencies = [ 2953 + "proc-macro2", 2954 + "quote", 2955 + "syn 2.0.112", 2956 + ] 2957 + 2958 + [[package]] 2959 + name = "thiserror-impl" 2960 + version = "2.0.17" 2961 + source = "registry+https://github.com/rust-lang/crates.io-index" 2962 + checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" 2963 + dependencies = [ 2964 + "proc-macro2", 2965 + "quote", 2966 + "syn 2.0.112", 2967 + ] 2968 + 2969 + [[package]] 2970 + name = "thread_local" 2971 + version = "1.1.9" 2972 + source = "registry+https://github.com/rust-lang/crates.io-index" 2973 + checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" 2974 + dependencies = [ 2975 + "cfg-if", 2976 + ] 2977 + 2978 + [[package]] 2979 + name = "time" 2980 + version = "0.3.44" 2981 + source = "registry+https://github.com/rust-lang/crates.io-index" 2982 + checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" 2983 + dependencies = [ 2984 + "deranged", 2985 + "libc", 2986 + "num-conv", 2987 + "num_threads", 2988 + "powerfmt", 2989 + "serde", 2990 + "time-core", 2991 + ] 2992 + 2993 + [[package]] 2994 + name = "time-core" 2995 + version = "0.1.6" 2996 + source = "registry+https://github.com/rust-lang/crates.io-index" 2997 + checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" 2998 + 2999 + [[package]] 3000 + name = "tinyvec" 3001 + version = "1.10.0" 3002 + source = "registry+https://github.com/rust-lang/crates.io-index" 3003 + checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" 3004 + dependencies = [ 3005 + "tinyvec_macros", 3006 + ] 3007 + 3008 + [[package]] 3009 + name = "tinyvec_macros" 3010 + version = "0.1.1" 3011 + source = "registry+https://github.com/rust-lang/crates.io-index" 3012 + checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 3013 + 3014 + [[package]] 3015 + name = "toml_datetime" 3016 + version = "0.7.5+spec-1.1.0" 3017 + source = "registry+https://github.com/rust-lang/crates.io-index" 3018 + checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" 3019 + dependencies = [ 3020 + "serde_core", 3021 + ] 3022 + 3023 + [[package]] 3024 + name = "toml_edit" 3025 + version = "0.23.10+spec-1.0.0" 3026 + source = "registry+https://github.com/rust-lang/crates.io-index" 3027 + checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" 3028 + dependencies = [ 3029 + "indexmap", 3030 + "toml_datetime", 3031 + "toml_parser", 3032 + "winnow", 3033 + ] 3034 + 3035 + [[package]] 3036 + name = "toml_parser" 3037 + version = "1.0.6+spec-1.1.0" 3038 + source = "registry+https://github.com/rust-lang/crates.io-index" 3039 + checksum = "a3198b4b0a8e11f09dd03e133c0280504d0801269e9afa46362ffde1cbeebf44" 3040 + dependencies = [ 3041 + "winnow", 3042 + ] 3043 + 3044 + [[package]] 3045 + name = "tracing" 3046 + version = "0.1.44" 3047 + source = "registry+https://github.com/rust-lang/crates.io-index" 3048 + checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" 3049 + dependencies = [ 3050 + "pin-project-lite", 3051 + "tracing-attributes", 3052 + "tracing-core", 3053 + ] 3054 + 3055 + [[package]] 3056 + name = "tracing-attributes" 3057 + version = "0.1.31" 3058 + source = "registry+https://github.com/rust-lang/crates.io-index" 3059 + checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" 3060 + dependencies = [ 3061 + "proc-macro2", 3062 + "quote", 3063 + "syn 2.0.112", 3064 + ] 3065 + 3066 + [[package]] 3067 + name = "tracing-core" 3068 + version = "0.1.36" 3069 + source = "registry+https://github.com/rust-lang/crates.io-index" 3070 + checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" 3071 + dependencies = [ 3072 + "once_cell", 3073 + "valuable", 3074 + ] 3075 + 3076 + [[package]] 3077 + name = "tracing-error" 3078 + version = "0.2.1" 3079 + source = "registry+https://github.com/rust-lang/crates.io-index" 3080 + checksum = "8b1581020d7a273442f5b45074a6a57d5757ad0a47dac0e9f0bd57b81936f3db" 3081 + dependencies = [ 3082 + "tracing", 3083 + "tracing-subscriber", 3084 + ] 3085 + 3086 + [[package]] 3087 + name = "tracing-log" 3088 + version = "0.2.0" 3089 + source = "registry+https://github.com/rust-lang/crates.io-index" 3090 + checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" 3091 + dependencies = [ 3092 + "log", 3093 + "once_cell", 3094 + "tracing-core", 3095 + ] 3096 + 3097 + [[package]] 3098 + name = "tracing-oslog" 3099 + version = "0.3.0" 3100 + source = "registry+https://github.com/rust-lang/crates.io-index" 3101 + checksum = "d76902d2a8d5f9f55a81155c08971734071968c90f2d9bfe645fe700579b2950" 3102 + dependencies = [ 3103 + "cc", 3104 + "cfg-if", 3105 + "tracing-core", 3106 + "tracing-subscriber", 3107 + ] 3108 + 3109 + [[package]] 3110 + name = "tracing-subscriber" 3111 + version = "0.3.22" 3112 + source = "registry+https://github.com/rust-lang/crates.io-index" 3113 + checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" 3114 + dependencies = [ 3115 + "matchers", 3116 + "nu-ansi-term", 3117 + "once_cell", 3118 + "regex-automata", 3119 + "sharded-slab", 3120 + "smallvec", 3121 + "thread_local", 3122 + "tracing", 3123 + "tracing-core", 3124 + "tracing-log", 3125 + ] 3126 + 3127 + [[package]] 3128 + name = "tracing-wasm" 3129 + version = "0.2.1" 3130 + source = "registry+https://github.com/rust-lang/crates.io-index" 3131 + checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07" 3132 + dependencies = [ 3133 + "tracing", 3134 + "tracing-subscriber", 3135 + "wasm-bindgen", 3136 + ] 3137 + 3138 + [[package]] 3139 + name = "typeid" 3140 + version = "1.0.3" 3141 + source = "registry+https://github.com/rust-lang/crates.io-index" 3142 + checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" 3143 + 3144 + [[package]] 3145 + name = "typenum" 3146 + version = "1.19.0" 3147 + source = "registry+https://github.com/rust-lang/crates.io-index" 3148 + checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" 3149 + 3150 + [[package]] 3151 + name = "typewit" 3152 + version = "1.14.2" 3153 + source = "registry+https://github.com/rust-lang/crates.io-index" 3154 + checksum = "f8c1ae7cc0fdb8b842d65d127cb981574b0d2b249b74d1c7a2986863dc134f71" 3155 + 3156 + [[package]] 3157 + name = "ucd-trie" 3158 + version = "0.1.7" 3159 + source = "registry+https://github.com/rust-lang/crates.io-index" 3160 + checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" 3161 + 3162 + [[package]] 3163 + name = "unicode-ident" 3164 + version = "1.0.22" 3165 + source = "registry+https://github.com/rust-lang/crates.io-index" 3166 + checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" 3167 + 3168 + [[package]] 3169 + name = "unicode-segmentation" 3170 + version = "1.12.0" 3171 + source = "registry+https://github.com/rust-lang/crates.io-index" 3172 + checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" 3173 + 3174 + [[package]] 3175 + name = "unicode-truncate" 3176 + version = "2.0.0" 3177 + source = "registry+https://github.com/rust-lang/crates.io-index" 3178 + checksum = "8fbf03860ff438702f3910ca5f28f8dac63c1c11e7efb5012b8b175493606330" 3179 + dependencies = [ 3180 + "itertools 0.13.0", 3181 + "unicode-segmentation", 3182 + "unicode-width", 3183 + ] 3184 + 3185 + [[package]] 3186 + name = "unicode-width" 3187 + version = "0.2.2" 3188 + source = "registry+https://github.com/rust-lang/crates.io-index" 3189 + checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" 3190 + 3191 + [[package]] 3192 + name = "unicode-xid" 3193 + version = "0.2.6" 3194 + source = "registry+https://github.com/rust-lang/crates.io-index" 3195 + checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" 3196 + 3197 + [[package]] 3198 + name = "utf8parse" 3199 + version = "0.2.2" 3200 + source = "registry+https://github.com/rust-lang/crates.io-index" 3201 + checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" 3202 + 3203 + [[package]] 3204 + name = "uuid" 3205 + version = "1.19.0" 3206 + source = "registry+https://github.com/rust-lang/crates.io-index" 3207 + checksum = "e2e054861b4bd027cd373e18e8d8d8e6548085000e41290d95ce0c373a654b4a" 3208 + dependencies = [ 3209 + "atomic", 3210 + "getrandom", 3211 + "js-sys", 3212 + "serde_core", 3213 + "wasm-bindgen", 3214 + ] 3215 + 3216 + [[package]] 3217 + name = "valuable" 3218 + version = "0.1.1" 3219 + source = "registry+https://github.com/rust-lang/crates.io-index" 3220 + checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" 3221 + 3222 + [[package]] 3223 + name = "variadics_please" 3224 + version = "1.1.0" 3225 + source = "registry+https://github.com/rust-lang/crates.io-index" 3226 + checksum = "41b6d82be61465f97d42bd1d15bf20f3b0a3a0905018f38f9d6f6962055b0b5c" 3227 + dependencies = [ 3228 + "proc-macro2", 3229 + "quote", 3230 + "syn 2.0.112", 3231 + ] 3232 + 3233 + [[package]] 3234 + name = "version_check" 3235 + version = "0.9.5" 3236 + source = "registry+https://github.com/rust-lang/crates.io-index" 3237 + checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" 3238 + 3239 + [[package]] 3240 + name = "vtparse" 3241 + version = "0.6.2" 3242 + source = "registry+https://github.com/rust-lang/crates.io-index" 3243 + checksum = "6d9b2acfb050df409c972a37d3b8e08cdea3bddb0c09db9d53137e504cfabed0" 3244 + dependencies = [ 3245 + "utf8parse", 3246 + ] 3247 + 3248 + [[package]] 3249 + name = "walkdir" 3250 + version = "2.5.0" 3251 + source = "registry+https://github.com/rust-lang/crates.io-index" 3252 + checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" 3253 + dependencies = [ 3254 + "same-file", 3255 + "winapi-util", 3256 + ] 3257 + 3258 + [[package]] 3259 + name = "wasi" 3260 + version = "0.11.1+wasi-snapshot-preview1" 3261 + source = "registry+https://github.com/rust-lang/crates.io-index" 3262 + checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" 3263 + 3264 + [[package]] 3265 + name = "wasip2" 3266 + version = "1.0.1+wasi-0.2.4" 3267 + source = "registry+https://github.com/rust-lang/crates.io-index" 3268 + checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" 3269 + dependencies = [ 3270 + "wit-bindgen", 3271 + ] 3272 + 3273 + [[package]] 3274 + name = "wasm-bindgen" 3275 + version = "0.2.106" 3276 + source = "registry+https://github.com/rust-lang/crates.io-index" 3277 + checksum = "0d759f433fa64a2d763d1340820e46e111a7a5ab75f993d1852d70b03dbb80fd" 3278 + dependencies = [ 3279 + "cfg-if", 3280 + "once_cell", 3281 + "rustversion", 3282 + "wasm-bindgen-macro", 3283 + "wasm-bindgen-shared", 3284 + ] 3285 + 3286 + [[package]] 3287 + name = "wasm-bindgen-futures" 3288 + version = "0.4.56" 3289 + source = "registry+https://github.com/rust-lang/crates.io-index" 3290 + checksum = "836d9622d604feee9e5de25ac10e3ea5f2d65b41eac0d9ce72eb5deae707ce7c" 3291 + dependencies = [ 3292 + "cfg-if", 3293 + "js-sys", 3294 + "once_cell", 3295 + "wasm-bindgen", 3296 + "web-sys", 3297 + ] 3298 + 3299 + [[package]] 3300 + name = "wasm-bindgen-macro" 3301 + version = "0.2.106" 3302 + source = "registry+https://github.com/rust-lang/crates.io-index" 3303 + checksum = "48cb0d2638f8baedbc542ed444afc0644a29166f1595371af4fecf8ce1e7eeb3" 3304 + dependencies = [ 3305 + "quote", 3306 + "wasm-bindgen-macro-support", 3307 + ] 3308 + 3309 + [[package]] 3310 + name = "wasm-bindgen-macro-support" 3311 + version = "0.2.106" 3312 + source = "registry+https://github.com/rust-lang/crates.io-index" 3313 + checksum = "cefb59d5cd5f92d9dcf80e4683949f15ca4b511f4ac0a6e14d4e1ac60c6ecd40" 3314 + dependencies = [ 3315 + "bumpalo", 3316 + "proc-macro2", 3317 + "quote", 3318 + "syn 2.0.112", 3319 + "wasm-bindgen-shared", 3320 + ] 3321 + 3322 + [[package]] 3323 + name = "wasm-bindgen-shared" 3324 + version = "0.2.106" 3325 + source = "registry+https://github.com/rust-lang/crates.io-index" 3326 + checksum = "cbc538057e648b67f72a982e708d485b2efa771e1ac05fec311f9f63e5800db4" 3327 + dependencies = [ 3328 + "unicode-ident", 3329 + ] 3330 + 3331 + [[package]] 3332 + name = "web-sys" 3333 + version = "0.3.83" 3334 + source = "registry+https://github.com/rust-lang/crates.io-index" 3335 + checksum = "9b32828d774c412041098d182a8b38b16ea816958e07cf40eec2bc080ae137ac" 3336 + dependencies = [ 3337 + "js-sys", 3338 + "wasm-bindgen", 3339 + ] 3340 + 3341 + [[package]] 3342 + name = "web-time" 3343 + version = "1.1.0" 3344 + source = "registry+https://github.com/rust-lang/crates.io-index" 3345 + checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" 3346 + dependencies = [ 3347 + "js-sys", 3348 + "wasm-bindgen", 3349 + ] 3350 + 3351 + [[package]] 3352 + name = "wezterm-bidi" 3353 + version = "0.2.3" 3354 + source = "registry+https://github.com/rust-lang/crates.io-index" 3355 + checksum = "0c0a6e355560527dd2d1cf7890652f4f09bb3433b6aadade4c9b5ed76de5f3ec" 3356 + dependencies = [ 3357 + "log", 3358 + "wezterm-dynamic", 3359 + ] 3360 + 3361 + [[package]] 3362 + name = "wezterm-blob-leases" 3363 + version = "0.1.1" 3364 + source = "registry+https://github.com/rust-lang/crates.io-index" 3365 + checksum = "692daff6d93d94e29e4114544ef6d5c942a7ed998b37abdc19b17136ea428eb7" 3366 + dependencies = [ 3367 + "getrandom", 3368 + "mac_address", 3369 + "sha2", 3370 + "thiserror 1.0.69", 3371 + "uuid", 3372 + ] 3373 + 3374 + [[package]] 3375 + name = "wezterm-color-types" 3376 + version = "0.3.0" 3377 + source = "registry+https://github.com/rust-lang/crates.io-index" 3378 + checksum = "7de81ef35c9010270d63772bebef2f2d6d1f2d20a983d27505ac850b8c4b4296" 3379 + dependencies = [ 3380 + "csscolorparser", 3381 + "deltae", 3382 + "lazy_static", 3383 + "wezterm-dynamic", 3384 + ] 3385 + 3386 + [[package]] 3387 + name = "wezterm-dynamic" 3388 + version = "0.2.1" 3389 + source = "registry+https://github.com/rust-lang/crates.io-index" 3390 + checksum = "5f2ab60e120fd6eaa68d9567f3226e876684639d22a4219b313ff69ec0ccd5ac" 3391 + dependencies = [ 3392 + "log", 3393 + "ordered-float", 3394 + "strsim", 3395 + "thiserror 1.0.69", 3396 + "wezterm-dynamic-derive", 3397 + ] 3398 + 3399 + [[package]] 3400 + name = "wezterm-dynamic-derive" 3401 + version = "0.1.1" 3402 + source = "registry+https://github.com/rust-lang/crates.io-index" 3403 + checksum = "46c0cf2d539c645b448eaffec9ec494b8b19bd5077d9e58cb1ae7efece8d575b" 3404 + dependencies = [ 3405 + "proc-macro2", 3406 + "quote", 3407 + "syn 1.0.109", 3408 + ] 3409 + 3410 + [[package]] 3411 + name = "wezterm-input-types" 3412 + version = "0.1.0" 3413 + source = "registry+https://github.com/rust-lang/crates.io-index" 3414 + checksum = "7012add459f951456ec9d6c7e6fc340b1ce15d6fc9629f8c42853412c029e57e" 3415 + dependencies = [ 3416 + "bitflags 1.3.2", 3417 + "euclid", 3418 + "lazy_static", 3419 + "serde", 3420 + "wezterm-dynamic", 3421 + ] 3422 + 3423 + [[package]] 3424 + name = "wgpu-types" 3425 + version = "26.0.0" 3426 + source = "registry+https://github.com/rust-lang/crates.io-index" 3427 + checksum = "eca7a8d8af57c18f57d393601a1fb159ace8b2328f1b6b5f80893f7d672c9ae2" 3428 + dependencies = [ 3429 + "bitflags 2.10.0", 3430 + "bytemuck", 3431 + "js-sys", 3432 + "log", 3433 + "serde", 3434 + "thiserror 2.0.17", 3435 + "web-sys", 3436 + ] 3437 + 3438 + [[package]] 3439 + name = "winapi" 3440 + version = "0.3.9" 3441 + source = "registry+https://github.com/rust-lang/crates.io-index" 3442 + checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 3443 + dependencies = [ 3444 + "winapi-i686-pc-windows-gnu", 3445 + "winapi-x86_64-pc-windows-gnu", 3446 + ] 3447 + 3448 + [[package]] 3449 + name = "winapi-i686-pc-windows-gnu" 3450 + version = "0.4.0" 3451 + source = "registry+https://github.com/rust-lang/crates.io-index" 3452 + checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 3453 + 3454 + [[package]] 3455 + name = "winapi-util" 3456 + version = "0.1.11" 3457 + source = "registry+https://github.com/rust-lang/crates.io-index" 3458 + checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" 3459 + dependencies = [ 3460 + "windows-sys 0.61.2", 3461 + ] 3462 + 3463 + [[package]] 3464 + name = "winapi-x86_64-pc-windows-gnu" 3465 + version = "0.4.0" 3466 + source = "registry+https://github.com/rust-lang/crates.io-index" 3467 + checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 3468 + 3469 + [[package]] 3470 + name = "windows-link" 3471 + version = "0.2.1" 3472 + source = "registry+https://github.com/rust-lang/crates.io-index" 3473 + checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" 3474 + 3475 + [[package]] 3476 + name = "windows-sys" 3477 + version = "0.45.0" 3478 + source = "registry+https://github.com/rust-lang/crates.io-index" 3479 + checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" 3480 + dependencies = [ 3481 + "windows-targets", 3482 + ] 3483 + 3484 + [[package]] 3485 + name = "windows-sys" 3486 + version = "0.61.2" 3487 + source = "registry+https://github.com/rust-lang/crates.io-index" 3488 + checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" 3489 + dependencies = [ 3490 + "windows-link", 3491 + ] 3492 + 3493 + [[package]] 3494 + name = "windows-targets" 3495 + version = "0.42.2" 3496 + source = "registry+https://github.com/rust-lang/crates.io-index" 3497 + checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" 3498 + dependencies = [ 3499 + "windows_aarch64_gnullvm", 3500 + "windows_aarch64_msvc", 3501 + "windows_i686_gnu", 3502 + "windows_i686_msvc", 3503 + "windows_x86_64_gnu", 3504 + "windows_x86_64_gnullvm", 3505 + "windows_x86_64_msvc", 3506 + ] 3507 + 3508 + [[package]] 3509 + name = "windows_aarch64_gnullvm" 3510 + version = "0.42.2" 3511 + source = "registry+https://github.com/rust-lang/crates.io-index" 3512 + checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" 3513 + 3514 + [[package]] 3515 + name = "windows_aarch64_msvc" 3516 + version = "0.42.2" 3517 + source = "registry+https://github.com/rust-lang/crates.io-index" 3518 + checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" 3519 + 3520 + [[package]] 3521 + name = "windows_i686_gnu" 3522 + version = "0.42.2" 3523 + source = "registry+https://github.com/rust-lang/crates.io-index" 3524 + checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" 3525 + 3526 + [[package]] 3527 + name = "windows_i686_msvc" 3528 + version = "0.42.2" 3529 + source = "registry+https://github.com/rust-lang/crates.io-index" 3530 + checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" 3531 + 3532 + [[package]] 3533 + name = "windows_x86_64_gnu" 3534 + version = "0.42.2" 3535 + source = "registry+https://github.com/rust-lang/crates.io-index" 3536 + checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" 3537 + 3538 + [[package]] 3539 + name = "windows_x86_64_gnullvm" 3540 + version = "0.42.2" 3541 + source = "registry+https://github.com/rust-lang/crates.io-index" 3542 + checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" 3543 + 3544 + [[package]] 3545 + name = "windows_x86_64_msvc" 3546 + version = "0.42.2" 3547 + source = "registry+https://github.com/rust-lang/crates.io-index" 3548 + checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" 3549 + 3550 + [[package]] 3551 + name = "winnow" 3552 + version = "0.7.14" 3553 + source = "registry+https://github.com/rust-lang/crates.io-index" 3554 + checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" 3555 + dependencies = [ 3556 + "memchr", 3557 + ] 3558 + 3559 + [[package]] 3560 + name = "wit-bindgen" 3561 + version = "0.46.0" 3562 + source = "registry+https://github.com/rust-lang/crates.io-index" 3563 + checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" 3564 + 3565 + [[package]] 3566 + name = "zerocopy" 3567 + version = "0.8.31" 3568 + source = "registry+https://github.com/rust-lang/crates.io-index" 3569 + checksum = "fd74ec98b9250adb3ca554bdde269adf631549f51d8a8f8f0a10b50f1cb298c3" 3570 + dependencies = [ 3571 + "zerocopy-derive", 3572 + ] 3573 + 3574 + [[package]] 3575 + name = "zerocopy-derive" 3576 + version = "0.8.31" 3577 + source = "registry+https://github.com/rust-lang/crates.io-index" 3578 + checksum = "d8a8d209fdf45cf5138cbb5a506f6b52522a25afccc534d1475dad8e31105c6a" 3579 + dependencies = [ 3580 + "proc-macro2", 3581 + "quote", 3582 + "syn 2.0.112", 3583 + ]
+18
Cargo.toml
··· 1 + [package] 2 + name = "striker" 3 + version = "0.1.0" 4 + edition = "2024" 5 + 6 + [dependencies] 7 + color-eyre = "0.6.5" 8 + crossterm = "0.29.0" 9 + ratatui = "0.30.0" 10 + bevy = { version = "0.17", default-features = false, features = ["bevy_state", "async_executor", "async-io"] } 11 + bevy_ratatui = { git = "https://tangled.org/sachy.dev/bevy_ratatui" } 12 + 13 + [lib] 14 + path = "src/lib.rs" 15 + 16 + [[bin]] 17 + path = "src/main.rs" 18 + name = "striker"
+5
README.md
··· 1 + # Striker - Pico Strike Monitor 2 + 3 + Striker is a TUI application written with Bevy + Ratatui for the purpose of montoring pico-strike devices. 4 + 5 + Currently a MASSIVE WIP.
+37
src/device.rs
··· 1 + use std::net::IpAddr; 2 + 3 + use bevy::ecs::{component::Component, entity::Entity, resource::Resource}; 4 + 5 + #[derive(Debug, Component)] 6 + pub struct Device; 7 + 8 + #[derive(Debug, Component)] 9 + #[component(immutable)] 10 + pub struct DeviceSocket { 11 + pub address: IpAddr, 12 + pub port: u16, 13 + } 14 + 15 + #[derive(Debug, Component)] 16 + #[component(immutable)] 17 + pub struct StormLevel(pub u16); 18 + 19 + #[derive(Debug, Component)] 20 + #[component(immutable)] 21 + pub struct Timestamp(pub i64); 22 + 23 + #[derive(Debug, Component)] 24 + #[relationship(relationship_target = StormLevels)] 25 + pub struct Source(Entity); 26 + 27 + #[derive(Component, Debug)] 28 + #[relationship_target(relationship = Source)] 29 + pub struct StormLevels { 30 + levels: Vec<Entity>, 31 + } 32 + 33 + #[derive(Debug, Resource)] 34 + pub struct ConnectedDevice(pub Entity); 35 + 36 + #[derive(Debug, Resource, Default)] 37 + pub struct SearchingDevices(pub bool);
+86
src/lib.rs
··· 1 + mod device; 2 + mod messages; 3 + mod state; 4 + 5 + use bevy::{ 6 + app::{AppExit, Plugin, PreUpdate, Update}, 7 + ecs::{ 8 + error::Result, 9 + message::{MessageReader, MessageWriter}, 10 + name::Name, 11 + query::With, 12 + schedule::IntoScheduleConfigs, 13 + system::{Query, Res, ResMut}, 14 + }, 15 + state::{app::AppExtStates, condition::in_state}, 16 + }; 17 + use bevy_ratatui::{RatatuiContext, event::KeyMessage}; 18 + use ratatui::{ 19 + layout::{Constraint, HorizontalAlignment, Layout}, 20 + widgets::{Block, Padding, Paragraph}, 21 + }; 22 + 23 + use crate::{ 24 + device::{Device, DeviceSocket, SearchingDevices}, 25 + state::AppState, 26 + }; 27 + 28 + #[derive(Debug)] 29 + pub struct StrikerPlugin; 30 + 31 + impl Plugin for StrikerPlugin { 32 + fn build(&self, app: &mut bevy::app::App) { 33 + app.init_resource::<SearchingDevices>() 34 + .init_state::<AppState>() 35 + .add_systems(PreUpdate, keybinds) 36 + .add_systems(Update, home_view.run_if(in_state(AppState::Home))); 37 + } 38 + } 39 + 40 + fn keybinds( 41 + mut key_reader: MessageReader<KeyMessage>, 42 + mut is_searching: Option<ResMut<SearchingDevices>>, 43 + mut app_exit: MessageWriter<AppExit>, 44 + ) { 45 + use ratatui::crossterm::event::KeyCode; 46 + for message in key_reader.read() { 47 + match message.code { 48 + KeyCode::Char('s') => { 49 + if let Some(is_searching) = is_searching.as_deref_mut() { 50 + is_searching.0 = !is_searching.0; 51 + } 52 + } 53 + KeyCode::Char('q') | KeyCode::Esc => { 54 + app_exit.write(AppExit::Success); 55 + } 56 + _ => {} 57 + } 58 + } 59 + } 60 + 61 + fn home_view( 62 + mut context: ResMut<RatatuiContext>, 63 + is_searching: Res<SearchingDevices>, 64 + _q_devices: Query<(&Name, &DeviceSocket), With<Device>>, 65 + ) -> Result { 66 + context.draw(|frame| { 67 + let [top, bottom] = 68 + Layout::vertical([Constraint::Length(3), Constraint::Fill(1)]).areas(frame.area()); 69 + 70 + let searching = if is_searching.0 { 71 + "Searching..." 72 + } else { 73 + "Select a Device" 74 + }; 75 + let paragraph = Paragraph::new(searching).block( 76 + Block::bordered() 77 + .padding(Padding::horizontal(2)) 78 + .title("Striker") 79 + .title_alignment(HorizontalAlignment::Center), 80 + ); 81 + frame.render_widget(paragraph, top); 82 + frame.render_widget(Block::bordered().title("Devices"), bottom); 83 + })?; 84 + 85 + Ok(()) 86 + }
+19
src/main.rs
··· 1 + fn main() { 2 + let wait_duration = std::time::Duration::from_secs_f64(1. / 30.); 3 + bevy::app::App::new() 4 + .add_plugins(( 5 + bevy_ratatui::RatatuiPlugins::default(), 6 + bevy::time::TimePlugin::default(), 7 + bevy::app::TaskPoolPlugin { 8 + task_pool_options: bevy::app::TaskPoolOptions { 9 + min_total_threads: 2, 10 + max_total_threads: 4, 11 + ..Default::default() 12 + }, 13 + }, 14 + bevy::app::ScheduleRunnerPlugin::run_loop(wait_duration), 15 + bevy::state::app::StatesPlugin::default(), 16 + striker::StrikerPlugin, 17 + )) 18 + .run(); 19 + }
+14
src/messages.rs
··· 1 + /// Messages are events that should effect some update 2 + /// to component states, or prompt Actions to be submitted. 3 + /// Messages can be user input or from network updates. 4 + #[derive(Debug, PartialEq, Eq)] 5 + pub enum StrikeMessage { 6 + StartSearch, 7 + FinishSearch, 8 + FoundDevice, 9 + NextDevice, 10 + PrevDevice, 11 + MonitorDevice, 12 + StopMonitoring, 13 + Finish, 14 + }
+8
src/state.rs
··· 1 + use bevy::state::state::States; 2 + 3 + #[derive(Debug, Clone, Copy, Default, Eq, PartialEq, Hash, States)] 4 + pub enum AppState { 5 + #[default] 6 + Home, 7 + Monitoring, 8 + }