From c5730298b424491a70502fc6d140c59e0630348e Mon Sep 17 00:00:00 2001 From: Dimitris Zervas Date: Sat, 15 Jun 2024 02:55:33 +0300 Subject: [PATCH] Revert "Use the new API in the frontend" --- .gitignore | 2 - .vscode/launch.json | 1 + .vscode/settings.json | 10 +- Cargo.lock | 915 ++------ Cargo.toml | 5 +- README.md | 12 +- applications/web/package.json | 4 +- applications/web/src/App.svelte | 2 +- applications/web/src/components/AppBar.svelte | 2 +- applications/web/src/components/Arc.svelte | 12 +- applications/web/src/components/Circle.svelte | 8 +- applications/web/src/components/Face.svelte | 41 +- .../web/src/components/FeatureHistory.svelte | 34 +- applications/web/src/components/Line.svelte | 20 +- .../web/src/components/PassiveSketch.svelte | 219 +- applications/web/src/components/Plane.svelte | 7 +- .../web/src/components/Point2D.svelte | 2 +- .../web/src/components/Point3D.svelte | 1 - applications/web/src/components/Scene.svelte | 122 +- .../src/components/SelectableSurface.svelte | 1 - applications/web/src/components/Sketch.svelte | 51 +- applications/web/src/components/Solid.svelte | 1 - .../web/src/components/ToolBar.svelte | 6 +- .../controls/CadControls/CadControls.svelte | 7 +- .../src/components/features/Extrusion.svelte | 16 +- .../web/src/components/features/Sketch.svelte | 43 +- .../web/src/components/tools/NewCircle.svelte | 86 +- .../web/src/components/tools/NewLine.svelte | 82 +- .../src/components/tools/NewRectangle.svelte | 8 +- .../web/src/components/tools/Select.svelte | 1 - applications/web/tests/e2e/test.ts | 2 +- package.json | 3 - packages/cadmium-macros/Cargo.toml | 13 - packages/cadmium-macros/src/lib.rs | 247 -- packages/cadmium/.cargo/cargo.toml | 3 - packages/cadmium/Cargo.toml | 34 +- packages/cadmium/README.md | 96 +- .../benches/faceselector-report/draw.rs | 66 - .../benches/faceselector-report/main.rs | 130 -- .../benches/faceselector-report/report.rs | 63 - .../faceselector-report/simple_circles.rs | 50 - .../examples/project_simple_extrusion.rs | 108 +- packages/cadmium/package.json | 4 +- packages/cadmium/src/archetypes.rs | 207 +- packages/cadmium/src/bin/gen-types.rs | 53 - packages/cadmium/src/error.rs | 51 +- packages/cadmium/src/extrusion.rs | 447 ++++ packages/cadmium/src/feature/extrusion.rs | 219 -- packages/cadmium/src/feature/helpers.rs | 215 -- packages/cadmium/src/feature/mod.rs | 45 - packages/cadmium/src/feature/point.rs | 156 -- packages/cadmium/src/feature/prelude.rs | 24 - packages/cadmium/src/feature/solid.rs | 151 -- packages/cadmium/src/isketch/compound.rs | 36 - .../cadmium/src/isketch/compound_rectangle.rs | 109 - packages/cadmium/src/isketch/face.rs | 91 - packages/cadmium/src/isketch/mod.rs | 169 -- packages/cadmium/src/isketch/primitive.rs | 212 -- packages/cadmium/src/lib.rs | 88 +- packages/cadmium/src/main.rs | 4 +- packages/cadmium/src/message.rs | 430 ++++ packages/cadmium/src/message/idwrap/de.rs | 83 - packages/cadmium/src/message/idwrap/mod.rs | 105 - packages/cadmium/src/message/idwrap/ser.rs | 37 - packages/cadmium/src/message/message.rs | 60 - packages/cadmium/src/message/mod.rs | 27 - packages/cadmium/src/project.rs | 731 +++--- packages/cadmium/src/realization.rs | 52 + packages/cadmium/src/sketch/constraints.rs | 294 +++ packages/cadmium/src/sketch/intersections.rs | 1985 +++++++++++++++++ packages/cadmium/src/sketch/mod.rs | 1911 ++++++++++++++++ packages/cadmium/src/sketch/svg.rs | 640 ++++++ packages/cadmium/src/solid.rs | 326 +++ packages/cadmium/src/step.rs | 111 + packages/cadmium/src/step/actions.rs | 47 - packages/cadmium/src/step/hash.rs | 57 - packages/cadmium/src/step/mod.rs | 66 - packages/cadmium/src/step/result.rs | 45 - packages/cadmium/src/step/sketch_action.rs | 51 - packages/cadmium/src/workbench.rs | 702 ++++-- packages/shared/cadmium-api.ts | 100 - packages/shared/isotope.d.ts | 35 - packages/shared/projectUtils.ts | 487 +++- packages/shared/stepTypeGuards.ts | 63 - packages/shared/stores.ts | 48 +- packages/shared/typeGuards.ts | 11 - packages/shared/types.d.ts | 42 +- turbo.json | 2 - 88 files changed, 8341 insertions(+), 5024 deletions(-) delete mode 100644 packages/cadmium-macros/Cargo.toml delete mode 100644 packages/cadmium-macros/src/lib.rs delete mode 100644 packages/cadmium/.cargo/cargo.toml delete mode 100644 packages/cadmium/benches/faceselector-report/draw.rs delete mode 100644 packages/cadmium/benches/faceselector-report/main.rs delete mode 100644 packages/cadmium/benches/faceselector-report/report.rs delete mode 100644 packages/cadmium/benches/faceselector-report/simple_circles.rs delete mode 100644 packages/cadmium/src/bin/gen-types.rs create mode 100644 packages/cadmium/src/extrusion.rs delete mode 100644 packages/cadmium/src/feature/extrusion.rs delete mode 100644 packages/cadmium/src/feature/helpers.rs delete mode 100644 packages/cadmium/src/feature/mod.rs delete mode 100644 packages/cadmium/src/feature/point.rs delete mode 100644 packages/cadmium/src/feature/prelude.rs delete mode 100644 packages/cadmium/src/feature/solid.rs delete mode 100644 packages/cadmium/src/isketch/compound.rs delete mode 100644 packages/cadmium/src/isketch/compound_rectangle.rs delete mode 100644 packages/cadmium/src/isketch/face.rs delete mode 100644 packages/cadmium/src/isketch/mod.rs delete mode 100644 packages/cadmium/src/isketch/primitive.rs create mode 100644 packages/cadmium/src/message.rs delete mode 100644 packages/cadmium/src/message/idwrap/de.rs delete mode 100644 packages/cadmium/src/message/idwrap/mod.rs delete mode 100644 packages/cadmium/src/message/idwrap/ser.rs delete mode 100644 packages/cadmium/src/message/message.rs delete mode 100644 packages/cadmium/src/message/mod.rs create mode 100644 packages/cadmium/src/realization.rs create mode 100644 packages/cadmium/src/sketch/constraints.rs create mode 100644 packages/cadmium/src/sketch/intersections.rs create mode 100644 packages/cadmium/src/sketch/mod.rs create mode 100644 packages/cadmium/src/sketch/svg.rs create mode 100644 packages/cadmium/src/solid.rs create mode 100644 packages/cadmium/src/step.rs delete mode 100644 packages/cadmium/src/step/actions.rs delete mode 100644 packages/cadmium/src/step/hash.rs delete mode 100644 packages/cadmium/src/step/mod.rs delete mode 100644 packages/cadmium/src/step/result.rs delete mode 100644 packages/cadmium/src/step/sketch_action.rs delete mode 100644 packages/shared/cadmium-api.ts delete mode 100644 packages/shared/isotope.d.ts delete mode 100644 packages/shared/stepTypeGuards.ts diff --git a/.gitignore b/.gitignore index ef7344d3..a70bef23 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,6 @@ /dist /target /packages/cadmium/target -/packages/cadmium/bench-*-report **/.svelte-kit /package *.env* @@ -14,4 +13,3 @@ vite.config.ts.timestamp-* /.pnpm-store/ **/*.obj **/*.step -.vscode diff --git a/.vscode/launch.json b/.vscode/launch.json index e633e907..173c5e2a 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -13,6 +13,7 @@ "pattern": "Local: +http://127.0.0.1:([0-9]+)/", "uriFormat": "http://127.0.0.1:%s", "webRoot": "${workspaceFolder}/applications/web/src", + "killOnServerStop": true } }, ], diff --git a/.vscode/settings.json b/.vscode/settings.json index 0c05d521..d6c6b6fe 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,13 +3,5 @@ "vite.autoStart": false, "vite.buildCommand": "pnpm run build", "vite.devCommand": "pnpm run dev", - "vite.showTerminal": true, - "cSpell.words": [ - "bindgen", - "isketch", - "Threlte", - "tsify", - "wireframe" - ], - "editor.formatOnSave": true + "vite.showTerminal": true } diff --git a/Cargo.lock b/Cargo.lock index c2969489..a7732f9e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14,9 +14,9 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.22.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ "gimli", ] @@ -41,9 +41,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" dependencies = [ "memchr 2.7.2", ] @@ -102,15 +102,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "approx" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" -dependencies = [ - "num-traits", -] - [[package]] name = "array-macro" version = "2.1.8" @@ -140,17 +131,26 @@ dependencies = [ "system-deps", ] +[[package]] +name = "atomic-polyfill" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3ff7eb3f316534d83a8a2c3d1674ace8a5a71198eba31e2e2b597833f699b28" +dependencies = [ + "critical-section", +] + [[package]] name = "autocfg" -version = "1.3.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.72" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17c6a35df3749d2e8bb1b7b21a976d82b15548788d2735b9d82f329268f71a11" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ "addr2line", "cc", @@ -169,9 +169,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.7" +version = "0.21.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" [[package]] name = "base64" @@ -247,9 +247,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" [[package]] name = "bytemuck" @@ -262,9 +262,9 @@ dependencies = [ [[package]] name = "bytemuck_derive" -version = "1.7.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ee891b04274a59bd38b412188e24b849617b2e45a0fd8d057deb63e7403761b" +checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" dependencies = [ "proc-macro2", "quote", @@ -273,9 +273,9 @@ dependencies = [ [[package]] name = "byteorder" -version = "1.5.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" +checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" @@ -291,17 +291,11 @@ name = "cadmium" version = "0.1.0" dependencies = [ "anyhow", - "cadmium-macros", "console_error_panic_hook", - "convert_case 0.6.0", "crc32fast", "geo", - "indexmap 2.2.6", - "isotope", - "itertools 0.13.0", - "js-sys", - "log", - "paste", + "indexmap 2.1.0", + "itertools 0.12.1", "serde", "serde_json", "serde_with", @@ -315,20 +309,7 @@ dependencies = [ "truck-stepio", "truck-topology", "tsify", - "tsify-next", "wasm-bindgen", - "wasm-logger", - "xxhash-rust", -] - -[[package]] -name = "cadmium-macros" -version = "0.1.0" -dependencies = [ - "convert_case 0.6.0", - "proc-macro2", - "quote", - "syn 1.0.109", ] [[package]] @@ -410,9 +391,12 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.99" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] [[package]] name = "cesu8" @@ -459,7 +443,7 @@ version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a98d30140e3296250832bbaaff83b27dcd6fa3cc70fb6f1f3e5c9c0023b5317" dependencies = [ - "approx 0.4.0", + "approx", "num-traits", "serde", ] @@ -535,15 +519,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - [[package]] name = "core-foundation" version = "0.9.4" @@ -595,13 +570,19 @@ dependencies = [ [[package]] name = "crc32fast" -version = "1.4.2" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" dependencies = [ "cfg-if", ] +[[package]] +name = "critical-section" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216" + [[package]] name = "crossbeam-channel" version = "0.5.13" @@ -613,21 +594,26 @@ dependencies = [ [[package]] name = "crossbeam-deque" -version = "0.8.5" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" dependencies = [ + "cfg-if", "crossbeam-epoch", "crossbeam-utils", ] [[package]] name = "crossbeam-epoch" -version = "0.9.18" +version = "0.9.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" dependencies = [ + "autocfg", + "cfg-if", "crossbeam-utils", + "memoffset", + "scopeguard", ] [[package]] @@ -685,9 +671,9 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.9" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1" +checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" dependencies = [ "darling_core", "darling_macro", @@ -695,9 +681,9 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.9" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120" +checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" dependencies = [ "fnv", "ident_case", @@ -709,9 +695,9 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.20.9" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" +checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ "darling_core", "quote", @@ -720,9 +706,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.3.11" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +checksum = "8eb30d70a07a3b04884d2677f06bec33509dc67ca60d92949e5535352d3191dc" dependencies = [ "powerfmt", "serde", @@ -745,7 +731,7 @@ version = "0.99.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" dependencies = [ - "convert_case 0.4.0", + "convert_case", "proc-macro2", "quote", "rustc_version", @@ -810,17 +796,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" -[[package]] -name = "displaydoc" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - [[package]] name = "dlib" version = "0.5.2" @@ -870,9 +845,9 @@ checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" [[package]] name = "dtoa-short" -version = "0.3.5" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87" +checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74" dependencies = [ "dtoa", ] @@ -891,19 +866,19 @@ checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" [[package]] name = "earcutr" -version = "0.4.3" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79127ed59a85d7687c409e9978547cffb7dc79675355ed22da6b66fd5f6ead01" +checksum = "0812b44697951d35fde8fcb0da81c9de7e809e825a66bbf1ecb79d9829d4ca3d" dependencies = [ - "itertools 0.11.0", + "itertools 0.10.5", "num-traits", ] [[package]] name = "either" -version = "1.12.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "embed-resource" @@ -1223,9 +1198,9 @@ dependencies = [ [[package]] name = "geo" -version = "0.28.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f811f663912a69249fa620dcd2a005db7254529da2d8a0b23942e81f47084501" +checksum = "1645cf1d7fea7dac1a66f7357f3df2677ada708b8d9db8e9b043878930095a96" dependencies = [ "earcutr", "float_next_after", @@ -1235,17 +1210,15 @@ dependencies = [ "num-traits", "robust", "rstar", - "serde", - "spade", ] [[package]] name = "geo-types" -version = "0.7.13" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ff16065e5720f376fbced200a5ae0f47ace85fd70b7e54269790281353b6d61" +checksum = "9705398c5c7b26132e74513f4ee7c1d7dafd786004991b375c172be2be0eecaa" dependencies = [ - "approx 0.5.1", + "approx", "num-traits", "rstar", "serde", @@ -1253,11 +1226,11 @@ dependencies = [ [[package]] name = "geographiclib-rs" -version = "0.2.4" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6e5ed84f8089c70234b0a8e0aedb6dc733671612ddc0d37c6066052f9781960" +checksum = "8ea804e7bd3c6a4ca6a01edfa35231557a8a81d4d3f3e1e2b650d028c42592be" dependencies = [ - "libm", + "lazy_static", ] [[package]] @@ -1286,9 +1259,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.29.0" +version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" +checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" [[package]] name = "gio" @@ -1388,19 +1361,6 @@ dependencies = [ "web-sys", ] -[[package]] -name = "gloo-utils" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa" -dependencies = [ - "js-sys", - "serde", - "serde_json", - "wasm-bindgen", - "web-sys", -] - [[package]] name = "gobject-sys" version = "0.18.0" @@ -1466,9 +1426,9 @@ dependencies = [ [[package]] name = "hash32" -version = "0.3.1" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" +checksum = "b0c35f58762feb77d74ebe43bdbc3210f09be9fe6742234d573bacc26ed92b67" dependencies = [ "byteorder", ] @@ -1481,9 +1441,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.14.5" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" dependencies = [ "ahash", "allocator-api2", @@ -1491,11 +1451,14 @@ dependencies = [ [[package]] name = "heapless" -version = "0.8.0" +version = "0.7.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" +checksum = "db04bc24a18b9ea980628ecf00e6c0264f3c1426dac36c00cb49b6fbad8b0743" dependencies = [ + "atomic-polyfill", "hash32", + "rustc_version", + "spin", "stable_deref_trait", ] @@ -1545,7 +1508,7 @@ checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" dependencies = [ "bytes", "fnv", - "itoa 1.0.11", + "itoa 1.0.9", ] [[package]] @@ -1560,12 +1523,12 @@ dependencies = [ [[package]] name = "http-body-util" -version = "0.1.2" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" dependencies = [ "bytes", - "futures-util", + "futures-core", "http", "http-body", "pin-project-lite", @@ -1573,9 +1536,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.9.2" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f3935c160d00ac752e09787e6e6bfc26494c2183cc922f1bc678a60d4733bc2" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" [[package]] name = "hyper" @@ -1589,7 +1552,7 @@ dependencies = [ "http", "http-body", "httparse", - "itoa 1.0.11", + "itoa 1.0.9", "pin-project-lite", "smallvec", "tokio", @@ -1618,16 +1581,16 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core 0.52.0", + "windows-core 0.51.1", ] [[package]] @@ -1649,124 +1612,6 @@ dependencies = [ "png", ] -[[package]] -name = "icu_collections" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locid" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_locid_transform" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_locid_transform_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" - -[[package]] -name = "icu_normalizer" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" - -[[package]] -name = "icu_properties" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f8ac670d7422d7f76b32e17a5db556510825b29ec9154f235977c9caba61036" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" - -[[package]] -name = "icu_provider" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -1775,14 +1620,12 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "1.0.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4716a3a0933a1d01c2f72450e89596eb51dd34ef3c211ccd875acdf1f8fe47ed" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" dependencies = [ - "icu_normalizer", - "icu_properties", - "smallvec", - "utf8_iter", + "unicode-bidi", + "unicode-normalization", ] [[package]] @@ -1798,12 +1641,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.2.6" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" dependencies = [ "equivalent", - "hashbrown 0.14.5", + "hashbrown 0.14.2", "serde", ] @@ -1831,19 +1674,6 @@ version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" -[[package]] -name = "isotope" -version = "0.1.0" -source = "git+https://github.com/CADmium-Co/ISOtope.git#f2f4590e552e3407ae19d811e56cd4c1c83039db" -dependencies = [ - "geo", - "nalgebra", - "serde", - "thiserror", - "tsify", - "wasm-bindgen", -] - [[package]] name = "itertools" version = "0.10.5" @@ -1853,15 +1683,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.12.1" @@ -1871,15 +1692,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" -dependencies = [ - "either", -] - [[package]] name = "itoa" version = "0.4.8" @@ -1888,9 +1700,9 @@ checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" [[package]] name = "itoa" -version = "1.0.11" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "javascriptcore-rs" @@ -1939,9 +1751,9 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" [[package]] name = "js-sys" -version = "0.3.69" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -2050,9 +1862,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.8" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4" [[package]] name = "libredox" @@ -2070,17 +1882,11 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd1bc4d24ad230d21fb898d1116b1801d7adfc449d42026475862ab48b11e70e" -[[package]] -name = "litemap" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" - [[package]] name = "lock_api" -version = "0.4.12" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" dependencies = [ "autocfg", "scopeguard", @@ -2179,16 +1985,6 @@ dependencies = [ "num-complex", ] -[[package]] -name = "matrixmultiply" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2" -dependencies = [ - "autocfg", - "rawpointer", -] - [[package]] name = "memchr" version = "1.0.2" @@ -2206,9 +2002,9 @@ checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" [[package]] name = "memoffset" -version = "0.9.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" dependencies = [ "autocfg", ] @@ -2227,9 +2023,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" +checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" dependencies = [ "adler", "simd-adler32", @@ -2265,34 +2061,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "nalgebra" -version = "0.32.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ea4908d4f23254adda3daa60ffef0f1ac7b8c3e9a864cf3cc154b251908a2ef" -dependencies = [ - "approx 0.5.1", - "matrixmultiply", - "nalgebra-macros", - "num-complex", - "num-rational", - "num-traits", - "serde", - "simba", - "typenum", -] - -[[package]] -name = "nalgebra-macros" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91761aed67d03ad966ef783ae962ef9bbaca728d2dd7ceb7939ec110fffad998" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "ndk" version = "0.7.0" @@ -2365,20 +2133,13 @@ dependencies = [ [[package]] name = "num-complex" -version = "0.4.6" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" dependencies = [ "num-traits", - "serde", ] -[[package]] -name = "num-conv" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" - [[package]] name = "num-derive" version = "0.3.3" @@ -2390,30 +2151,11 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "num-integer" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" -dependencies = [ - "num-integer", - "num-traits", -] - [[package]] name = "num-traits" -version = "0.2.19" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" dependencies = [ "autocfg", "libm", @@ -2579,18 +2321,18 @@ dependencies = [ [[package]] name = "object" -version = "0.35.0" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ec7ab813848ba4522158d5517a6093db1ded27575b070f4177b8d12b41db5e" +checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" dependencies = [ "memchr 2.7.2", ] [[package]] name = "once_cell" -version = "1.19.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" [[package]] name = "option-ext" @@ -2652,12 +2394,6 @@ dependencies = [ "windows-targets 0.52.5", ] -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - [[package]] name = "percent-encoding" version = "2.3.1" @@ -2842,8 +2578,8 @@ version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9d34169e64b3c7a80c8621a48adaf44e0cf62c78a9b25dd9dd35f1881a17cf9" dependencies = [ - "base64 0.21.7", - "indexmap 2.2.6", + "base64 0.21.5", + "indexmap 2.1.0", "line-wrap", "quick-xml 0.31.0", "serde", @@ -2933,9 +2669,9 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.85" +version = "1.0.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +checksum = "ec96c6a92621310b51366f1e28d05ef11489516e93be030060e5fc12024a49d6" dependencies = [ "unicode-ident", ] @@ -3061,12 +2797,6 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" -[[package]] -name = "rawpointer" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" - [[package]] name = "rayon" version = "1.10.0" @@ -3118,14 +2848,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.10.5" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" dependencies = [ "aho-corasick", "memchr 2.7.2", - "regex-automata 0.4.7", - "regex-syntax 0.8.4", + "regex-automata 0.4.3", + "regex-syntax 0.8.2", ] [[package]] @@ -3139,13 +2869,13 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.7" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" dependencies = [ "aho-corasick", "memchr 2.7.2", - "regex-syntax 0.8.4", + "regex-syntax 0.8.2", ] [[package]] @@ -3156,9 +2886,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.8.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "reqwest" @@ -3205,9 +2935,9 @@ checksum = "cbf4a6aa5f6d6888f39e980649f3ad6b666acdce1d78e95b8a2cb076e687ae30" [[package]] name = "rstar" -version = "0.12.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "133315eb94c7b1e8d0cb097e5a710d850263372fd028fff18969de708afc7008" +checksum = "73111312eb7a2287d229f06c00ff35b51ddee180f017ab6dec1f69d62ac098d6" dependencies = [ "heapless", "num-traits", @@ -3216,9 +2946,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.24" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" [[package]] name = "rustc-hash" @@ -3271,18 +3001,9 @@ checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" [[package]] name = "ryu" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" - -[[package]] -name = "safe_arch" -version = "0.7.1" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354" -dependencies = [ - "bytemuck", -] +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "same-file" @@ -3315,7 +3036,7 @@ checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" dependencies = [ "proc-macro2", "quote", - "serde_derive_internals 0.29.1", + "serde_derive_internals", "syn 2.0.66", ] @@ -3353,9 +3074,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.23" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" +checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" dependencies = [ "serde", ] @@ -3369,17 +3090,6 @@ dependencies = [ "serde_derive", ] -[[package]] -name = "serde-wasm-bindgen" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3b143e2833c57ab9ad3ea280d21fd34e285a42837aeb0ee301f4f41890fa00e" -dependencies = [ - "js-sys", - "serde", - "wasm-bindgen", -] - [[package]] name = "serde_derive" version = "1.0.203" @@ -3393,20 +3103,9 @@ dependencies = [ [[package]] name = "serde_derive_internals" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e578a843d40b4189a4d66bba51d7684f57da5bd7c304c64e14bd63efbef49509" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - -[[package]] -name = "serde_derive_internals" -version = "0.29.1" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3" dependencies = [ "proc-macro2", "quote", @@ -3419,7 +3118,7 @@ version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" dependencies = [ - "itoa 1.0.11", + "itoa 1.0.9", "ryu", "serde", ] @@ -3451,24 +3150,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" dependencies = [ "form_urlencoded", - "itoa 1.0.11", + "itoa 1.0.9", "ryu", "serde", ] [[package]] name = "serde_with" -version = "3.8.1" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20" +checksum = "64cd236ccc1b7a29e7e2739f27c0b2dd199804abc4290e32f59f3b68d6405c23" dependencies = [ - "base64 0.22.1", + "base64 0.21.5", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.2.6", + "indexmap 2.1.0", "serde", - "serde_derive", "serde_json", "serde_with_macros", "time", @@ -3476,9 +3174,9 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.8.1" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2" +checksum = "93634eb5f75a2323b16de4748022ac4297f9e76b6dced2be287a099f41b5e788" dependencies = [ "darling", "proc-macro2", @@ -3538,19 +3236,6 @@ dependencies = [ "lazy_static", ] -[[package]] -name = "simba" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" -dependencies = [ - "approx 0.5.1", - "num-complex", - "num-traits", - "paste", - "wide", -] - [[package]] name = "simd-adler32" version = "0.3.7" @@ -3644,12 +3329,21 @@ version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b20a809169ae442497e41a997fc5f14e2eea04e6ac590816a910d5d8068c8c0" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.14.2", "num-traits", "robust", "smallvec", ] +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -3693,9 +3387,9 @@ dependencies = [ [[package]] name = "strsim" -version = "0.11.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "strum" @@ -3708,11 +3402,11 @@ dependencies = [ [[package]] name = "strum_macros" -version = "0.26.4" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946" dependencies = [ - "heck 0.5.0", + "heck 0.4.1", "proc-macro2", "quote", "rustversion", @@ -3721,9 +3415,9 @@ dependencies = [ [[package]] name = "svg" -version = "0.17.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "700efb40f3f559c23c18b446e8ed62b08b56b2bb3197b36d57e0470b4102779e" +checksum = "02d815ad337e8449d2374d4248448645edfe74e699343dd5719139d93fa87112" [[package]] name = "swift-rs" @@ -3731,7 +3425,7 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bbdb58577b6301f8d17ae2561f32002a5bae056d444e0f69e611e504a276204" dependencies = [ - "base64 0.21.7", + "base64 0.21.5", "serde", "serde_json", ] @@ -3764,17 +3458,6 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" -[[package]] -name = "synstructure" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - [[package]] name = "system-deps" version = "6.2.2" @@ -4092,13 +3775,12 @@ dependencies = [ [[package]] name = "time" -version = "0.3.36" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e" dependencies = [ "deranged", - "itoa 1.0.11", - "num-conv", + "itoa 1.0.9", "powerfmt", "serde", "time-core", @@ -4113,24 +3795,28 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "26197e33420244aeb70c3e8c78376ca46571bc4e701e4791c2cd9f57dcb3a43f" dependencies = [ - "num-conv", "time-core", ] [[package]] -name = "tinystr" -version = "0.7.6" +name = "tinyvec" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" dependencies = [ - "displaydoc", - "zerovec", + "tinyvec_macros", ] +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + [[package]] name = "tokio" version = "1.38.0" @@ -4199,7 +3885,7 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.1.0", "serde", "serde_spanned", "toml_datetime", @@ -4212,7 +3898,7 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.1.0", "serde", "serde_spanned", "toml_datetime", @@ -4309,9 +3995,9 @@ dependencies = [ [[package]] name = "tray-icon" -version = "0.14.3" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ad8319cca93189ea9ab1b290de0595960529750b6b8b501a399ed1ec3775d60" +checksum = "0b27516dfcfa22a9faaf192283a122bfbede38c1e59ef194e3c4db6549b419c0" dependencies = [ "cocoa", "core-graphics", @@ -4478,12 +4164,10 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "tsify" version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6b26cf145f2f3b9ff84e182c448eaf05468e247f148cf3d2a7d67d78ff023a0" +source = "git+https://github.com/siefkenj/tsify#8a5a550d2ab41612cef88a3a3de2a94639b0d3fc" dependencies = [ - "gloo-utils 0.1.7", + "gloo-utils", "serde", - "serde-wasm-bindgen", "serde_json", "tsify-macros", "wasm-bindgen", @@ -4492,37 +4176,11 @@ dependencies = [ [[package]] name = "tsify-macros" version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a94b0f0954b3e59bfc2c246b4c8574390d94a4ad4ad246aaf2fb07d7dfd3b47" -dependencies = [ - "proc-macro2", - "quote", - "serde_derive_internals 0.28.0", - "syn 2.0.66", -] - -[[package]] -name = "tsify-next" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0407c98efe14c83fd025675246bf855f0ed750b6b57fa6ab839ade598ceb5374" -dependencies = [ - "gloo-utils 0.2.0", - "serde", - "serde_json", - "tsify-next-macros", - "wasm-bindgen", -] - -[[package]] -name = "tsify-next-macros" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "615b1b80acc6720d554777d55ed4ed35a5ceb0e0df7ff7cf9d3946ecbf74953e" +source = "git+https://github.com/siefkenj/tsify#8a5a550d2ab41612cef88a3a3de2a94639b0d3fc" dependencies = [ "proc-macro2", "quote", - "serde_derive_internals 0.29.1", + "serde_derive_internals", "syn 2.0.66", ] @@ -4573,11 +4231,26 @@ dependencies = [ "unic-common", ] +[[package]] +name = "unicode-bidi" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" + [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" + +[[package]] +name = "unicode-normalization" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +dependencies = [ + "tinyvec", +] [[package]] name = "unicode-segmentation" @@ -4587,9 +4260,9 @@ checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" [[package]] name = "url" -version = "2.5.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c25da092f0a868cdf09e8674cd3b7ef3a7d92a24253e663a2fb85e2496de56" +checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" dependencies = [ "form_urlencoded", "idna", @@ -4616,18 +4289,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" -[[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - [[package]] name = "uuid" version = "1.8.0" @@ -4727,9 +4388,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -4737,9 +4398,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", @@ -4752,9 +4413,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.42" +version = "0.4.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" dependencies = [ "cfg-if", "js-sys", @@ -4764,9 +4425,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -4774,9 +4435,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.92" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", @@ -4787,20 +4448,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" - -[[package]] -name = "wasm-logger" -version = "0.2.0" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "074649a66bb306c8f2068c9016395fa65d8e08d2affcbf95acf3c24c3ab19718" -dependencies = [ - "log", - "wasm-bindgen", - "web-sys", -] +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "wasm-streams" @@ -4828,9 +4478,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.69" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", @@ -4916,16 +4566,6 @@ dependencies = [ "windows-core 0.56.0", ] -[[package]] -name = "wide" -version = "0.7.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a040b111774ab63a19ef46bbc149398ab372b4ccdcfd719e9814dbd7dfd76c8" -dependencies = [ - "bytemuck", - "safe_arch", -] - [[package]] name = "winapi" version = "0.3.9" @@ -4991,11 +4631,11 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.52.0" +version = "0.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.48.5", ] [[package]] @@ -5034,9 +4674,9 @@ dependencies = [ [[package]] name = "windows-result" -version = "0.1.2" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" +checksum = "749f0da9cc72d82e600d8d2e44cadd0b9eedb9038f71a1c58556ac1c5791813b" dependencies = [ "windows-targets 0.52.5", ] @@ -5257,9 +4897,9 @@ checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" [[package]] name = "winnow" -version = "0.5.40" +version = "0.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +checksum = "a3b801d0e0a6726477cc207f60162da452f3a95adb368399bef20a946e06f65c" dependencies = [ "memchr 2.7.2", ] @@ -5274,18 +4914,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - -[[package]] -name = "writeable" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" - [[package]] name = "wry" version = "0.40.1" @@ -5349,12 +4977,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "xxhash-rust" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03" - [[package]] name = "xz2" version = "0.1.7" @@ -5364,30 +4986,6 @@ dependencies = [ "lzma-sys", ] -[[package]] -name = "yoke" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" -dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", - "synstructure", -] - [[package]] name = "zerocopy" version = "0.7.34" @@ -5407,46 +5005,3 @@ dependencies = [ "quote", "syn 2.0.66", ] - -[[package]] -name = "zerofrom" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", - "synstructure", -] - -[[package]] -name = "zerovec" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2cc8827d6c0994478a15c53f374f46fbd41bea663d809b14744bc42e6b109c" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97cf56601ee5052b4417d90c8755c6683473c926039908196cf35d99f893ebe7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] diff --git a/Cargo.toml b/Cargo.toml index ee66054c..278b014c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,3 +1,6 @@ [workspace] -members = [ "packages/cadmium", "packages/cadmium-macros", "applications/tauri" ] +members = ["packages/cadmium", "applications/tauri"] resolver = "2" + +[patch.crates-io] +tsify = { git = "https://github.com/siefkenj/tsify" } diff --git a/README.md b/README.md index 0e27cdad..d81060c0 100644 --- a/README.md +++ b/README.md @@ -108,13 +108,8 @@ yay -S aur/enchant1.6 aur/icu66 aur/libwebp052 Watch vitest unit tests only: ```shell -pnpm test:unit -- -w -``` - -Run playwright e2e tests only: - -```shell -pnpm test:unit -- -w +cd applications/web +pnpm test:unit -w ``` ### rust @@ -130,8 +125,7 @@ cargo test Simple exaples using the rust code can be found in `packages/cadmium/examples` Run simple rust example with: - -```shell +``` cargo run --example project_simple_extrusion ``` diff --git a/applications/web/package.json b/applications/web/package.json index 43cb0e4a..a31d606e 100644 --- a/applications/web/package.json +++ b/applications/web/package.json @@ -6,11 +6,11 @@ "dev": "vite dev", "build": "vite build", "preview": "vite preview", - "test": "pnpm test:e2e && pnpm test:unit", + "test": "pnpm test:integration && pnpm test:unit", "lint": "prettier --check . && eslint \"src/**/*.ts\"", "format": "prettier . --write .", "check": "svelte-check --tsconfig ./tsconfig.json", - "test:e2e": "playwright test", + "test:integration": "playwright test", "test:unit": "vitest", "types:guard": "ts-auto-guard --export-all src/types.d.ts" }, diff --git a/applications/web/src/App.svelte b/applications/web/src/App.svelte index aa95dfb0..2f01772c 100644 --- a/applications/web/src/App.svelte +++ b/applications/web/src/App.svelte @@ -37,7 +37,7 @@ // log('featureIndex changed to', val) // refresh workbench when featureIndex mutates - featureIndex.subscribe(_ => $wasmProject["get_workbench"] && workbenchIsStale.set(true)) + featureIndex.subscribe(val => $wasmProject["get_workbench"] && workbenchIsStale.set(true))
diff --git a/applications/web/src/components/AppBar.svelte b/applications/web/src/components/AppBar.svelte index 62231b41..c04fd408 100644 --- a/applications/web/src/components/AppBar.svelte +++ b/applications/web/src/components/AppBar.svelte @@ -10,10 +10,10 @@ import Moon from "phosphor-svelte/lib/Moon" import Sun from "phosphor-svelte/lib/Sun" import type {WithTarget} from "shared/types" + import {isProject} from "shared/typeGuards" import {base} from "../base" import {renameProject} from "shared/projectUtils" - // @ts-ignore const log = (function () { const context = "[AppBar.svelte]"; const color="gray"; return Function.prototype.bind.call(console.log, console, `%c${context}`, `font-weight:bold;color:${color};`)})() // prettier-ignore export let project: Project diff --git a/applications/web/src/components/Arc.svelte b/applications/web/src/components/Arc.svelte index 92caafbd..9f63c020 100644 --- a/applications/web/src/components/Arc.svelte +++ b/applications/web/src/components/Arc.svelte @@ -5,16 +5,14 @@ import {T} from "@threlte/core" import {flatten, arcToPoints, promoteTo3} from "shared/projectUtils" import {currentlySelected, currentlyMousedOver, sketchTool} from "shared/stores" - import type {EntityType} from "shared/types" + import type {EntityType, SketchPoint} from "shared/types" import {isEntity} from "shared/typeGuards" - import type { Point2 } from "cadmium" - // @ts-ignore const log = (function () { const context = "[Arc.svelte]"; const color="gray"; return Function.prototype.bind.call(console.log, console, `%c${context}`, `font-weight:bold;color:${color};`)})() // prettier-ignore const type: EntityType = "arc" - export let id: string, center: Point2, start: Point2, end: Point2 + export let id: string, center: SketchPoint, start: SketchPoint, end: SketchPoint export let dashedLineMaterial: LineMaterial, dashedHoveredMaterial: LineMaterial, @@ -27,9 +25,9 @@ $: selected = $currentlySelected.some(e => isEntity(e) && e.id === id && e.type === type) ? true : false - const center2 = new Vector2(center.x, center.y) - const start2 = new Vector2(start.x, start.y) - const end2 = new Vector2(end.x, end.y) + const center2 = new Vector2(center.twoD.x, center.twoD.y) + const start2 = new Vector2(start.twoD.x, start.twoD.y) + const end2 = new Vector2(end.twoD.x, end.twoD.y) const points = flatten(promoteTo3(arcToPoints(center2, start2, end2 /** implicit false */))) // defaulted false in function todo ask Matt diff --git a/applications/web/src/components/Circle.svelte b/applications/web/src/components/Circle.svelte index 00cfcdde..57413622 100644 --- a/applications/web/src/components/Circle.svelte +++ b/applications/web/src/components/Circle.svelte @@ -4,15 +4,13 @@ import {T} from "@threlte/core" import {flatten, circleToPoints, promoteTo3} from "shared/projectUtils" import {currentlySelected, currentlyMousedOver, sketchTool} from "shared/stores" - import type {EntityType} from "shared/types" - import type { Point2 } from "cadmium" + import type {CircleTuple, EntityType} from "shared/types" - // @ts-ignore const log = (function () { const context = "[Circle.svelte]"; const color="gray"; return Function.prototype.bind.call(console.log, console, `%c${context}`, `font-weight:bold;color:${color};`)})() // prettier-ignore const type: EntityType = "circle" - export let id: string, center: Point2, radius: number + export let id: string, center: CircleTuple["center"], radius: number // log("[props]", "id:", id, "center:", center, "radius:", radius) @@ -27,7 +25,7 @@ $: selected = $currentlySelected.some(e => e.id === id && e.type === type) ? true : false // array of x,y,z points - const points = flatten(promoteTo3(circleToPoints(center, radius))) + const points = flatten(promoteTo3(circleToPoints(center.twoD, radius))) const lineGeometry = new LineGeometry() lineGeometry.setPositions(points) diff --git a/applications/web/src/components/Face.svelte b/applications/web/src/components/Face.svelte index 0d165f30..b23c5368 100644 --- a/applications/web/src/components/Face.svelte +++ b/applications/web/src/components/Face.svelte @@ -3,9 +3,9 @@ import {Path, Vector2, Shape, MeshStandardMaterial, DoubleSide, ShapeGeometry} from "three" import {circleToPoints, arcToPoints} from "shared/projectUtils" import {currentlySelected, currentlyMousedOver, selectingFor} from "shared/stores" - import type {EntityType, IDictionary, Point2WithID} from "shared/types" + import type {EntityType, IDictionary, SketchPoint} from "shared/types" + // import Sketch from './Sketch.svelte' - // @ts-ignore const log = (function () { const context = "[Face.svelte]"; const color="gray"; return Function.prototype.bind.call(console.log, console, `%c${context}`, `font-weight:bold;color:${color};`)})() // prettier-ignore // todo see docs below @@ -13,7 +13,8 @@ // exterior: wire // holes: wires[] // } - export let face: any, id: string, pointsById: IDictionary + export let face: any, id: string, pointsById: IDictionary + // log("[props]", "face:", face, "id:", id, "pointsById:", pointsById) const type: EntityType = "face" @@ -35,33 +36,31 @@ function writeWireToShape(wire: {Circle: any; Segments: any}, shape: Path) { if (wire.Circle) { let circle = wire.Circle - let center = circle.center.data - let radius = circle.data - let points = circleToPoints(new Vector2(center[0], center[1]), radius) + let center = pointsById[circle.center] + let radius = circle.radius + let points = circleToPoints(new Vector2(center.twoD.x, center.twoD.y), radius) shape.setFromPoints(points) } else if (wire.Segments) { let points = [] for (let segment of wire.Segments) { - console.log("segment", segment) - if ("Line" in segment) { - let start = segment.Line.start - let end = segment.Line.end + if (segment.type === "Line") { + let start = pointsById[segment.start] + let end = pointsById[segment.end] if (points.length === 0) { - points.push(new Vector2(start.data[0], start.data[1])) + points.push(new Vector2(start.twoD.x, start.twoD.y)) } - points.push(new Vector2(end.data[0], end.data[1])) - } else if ("Arc" in segment) { - // TODO: We use a center + angles, not 3 points - let center = segment.Arc.center - let start = pointsById[segment.Arc.start] - let end = pointsById[segment.Arc.end] + points.push(new Vector2(end.twoD.x, end.twoD.y)) + } else if (segment.type === "Arc") { + let center = pointsById[segment.center] + let start = pointsById[segment.start] + let end = pointsById[segment.end] let arcPoints = arcToPoints( - new Vector2(center.x, center.y), - new Vector2(start.x, start.y), - new Vector2(end.x, end.y), - segment.Arc.clockwise, + new Vector2(center.twoD.x, center.twoD.y), + new Vector2(start.twoD.x, start.twoD.y), + new Vector2(end.twoD.x, end.twoD.y), + segment.clockwise, ) if (points.length !== 0) { diff --git a/applications/web/src/components/FeatureHistory.svelte b/applications/web/src/components/FeatureHistory.svelte index 7ab57b8c..bf608cf1 100644 --- a/applications/web/src/components/FeatureHistory.svelte +++ b/applications/web/src/components/FeatureHistory.svelte @@ -1,14 +1,13 @@ @@ -121,17 +169,17 @@ on:click={e => { if (editing) { if ($sketchTool === "line") { - newLineTool.click(e, projectToPlane(e.point)) + newLineTool.click(e, {twoD: projectToPlane(e.point), threeD: e.point}) } else if ($sketchTool === "circle") { - newCircleTool.click(e, projectToPlane(e.point)) + newCircleTool.click(e, {twoD: projectToPlane(e.point), threeD: e.point}) } else if ($sketchTool === "rectangle") { - newRectangleTool.click(e, projectToPlane(e.point)) + newRectangleTool.click(e, {twoD: projectToPlane(e.point), threeD: e.point}) } else if ($sketchTool === "select") { selectTool.click(e, projectToPlane(e.point)) } } }} - on:pointermove={debounce((e: any) => { + on:pointermove={debounce(e => { if (editing) { if ($sketchTool === "line") { newLineTool.mouseMove(e, projectToPlane(e.point)) @@ -146,10 +194,10 @@ - - - - + + + + - {#each history as step} - {#if isSketchPointStep(step)} -