Files
DOSSIER-STANDALONE/src-tauri/Cargo.toml
T
karim 1507c2bf00 God-Files aufgeteilt (ResourceManager/generatePlan/toWalls3d/App.tsx-Handler), Totcode entfernt (geometry-Crate, OCCT/HLR-Spike), PDF/Bild-Import ergänzt.
ResourceManager.tsx, generatePlan.ts und toWalls3d.ts sind nach Bauteil-
Domäne in src/ui/resourceManager/, src/plan/generatePlan/ und
src/plan/toWalls3d/ aufgeteilt (reine Verschiebung, keine Verhaltens-
änderung). App.tsx verliert weitere Handler-Gruppen an eigene Hooks
(useExportHandlers, useImportHandling, useKeyboardShortcuts) sowie
Hit-Testing an src/viewport/planHitTest.ts.

Unbenutzte Rust-geometry-Crate (durch WASM-Joins abgelöst) sowie der alte
OCCT/HLR-Schnitt-Spike (hlr.ts/occt.ts, vite occt-Aliases) entfernt.

Neu: PDF-Import als Rasterbild (src/io/pdfImport.ts) + gemeinsamer
Bild-Asset-Helfer (src/io/imageAsset.ts) für Plan- und Layout-Bilder.

tsc -b sauber, vitest 891/891 grün.
2026-08-19 22:45:41 +02:00

64 lines
2.8 KiB
TOML

[workspace]
members = ["."]
# render2d/render3d sind eigenstaendige Crates, damit sie headless ohne
# Tauri-Toolchain UND per wasm-pack (Feature "web") zu WASM baubar bleiben. Sie
# liegen zwar im src-tauri-Baum, gehoeren aber NICHT zum cad-tauri-Workspace —
# hier ausschliessen, damit `cad-tauri` sie dennoch per Pfad als Abhaengigkeit
# nutzen kann. kernel2d: analog — eigenstaendiger 2D-Geometrie-Kern (Port von
# kernel2d.ts), per wasm-pack (Feature "web") zu WASM gebaut, ausserhalb des
# cad-tauri-Workspace.
exclude = ["render2d", "render3d", "kernel2d", "dwgimport", "trucksolid"]
[package]
name = "cad-tauri"
version = "0.1.0"
edition = "2021"
[lib]
# Der Tauri-v2-Bibliotheksname; staticlib/cdylib fuer Mobile, rlib fuer Desktop.
name = "cad_tauri_lib"
crate-type = ["staticlib", "cdylib", "rlib"]
[features]
# Standard: reine Tauri-App (Webview + invoke). KEIN wgpu/winit.
default = []
# M2-Spike: nativer wgpu-2D-Viewport im Tauri-Prozess (eigenes winit-Fenster).
# Zieht render2d(+window) sowie winit/wgpu/pollster. Bewusst OPT-IN, damit der
# normale Build unveraendert schlank bleibt.
native2d = ["dep:render2d", "dep:winit", "dep:wgpu", "dep:pollster"]
# M2-Spike: nativer wgpu-3D-Viewport im Tauri-Prozess (eigenes winit-Fenster).
# Zieht render3d(+window) sowie winit/wgpu/pollster. Kann gemeinsam mit `native2d`
# aktiviert werden (dann zwei native Fenster). Ebenfalls OPT-IN.
native3d = ["dep:render3d", "dep:winit", "dep:wgpu", "dep:pollster"]
[build-dependencies]
tauri-build = { version = "2", features = [] }
[dependencies]
tauri = { version = "2", features = [] }
tauri-plugin-dialog = "2"
tauri-plugin-fs = "2"
tauri-plugin-updater = "2"
tauri-plugin-process = "2"
tauri-plugin-http = "2"
tauri-plugin-shell = "2"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
# OS-Advisory-Lock (gepflegter fs2-Nachfolger) fuer die Projektdatei-Lock-Datei
# (src/lock.rs): exklusiver Lock auf einer Sidecar-Datei, faellt automatisch
# beim Prozessende/Absturz weg (kein manuelles Aufraeumen noetig).
fs4 = { version = "0.9", default-features = false, features = ["sync"] }
# --- M2-Spike (nur mit Feature "native2d") -----------------------------------
# render2d ist eine eigenstaendige Crate (eigener leerer [workspace]); wir binden
# sie hier per Pfad ein und aktivieren ihr GPU-Fenster-Feature "window".
render2d = { path = "render2d", features = ["window"], optional = true }
# render3d analog: eigenstaendige Crate (via Parent-`exclude` aus dem Workspace
# genommen, ohne eigenen [workspace]-Block); per Pfad mit GPU-Fenster-Feature
# "window" eingebunden.
render3d = { path = "render3d", features = ["window"], optional = true }
# Versionen an render2d gekoppelt (identische raw-window-handle 0.6-Kette).
winit = { version = "0.30", optional = true }
wgpu = { version = "29", optional = true }
pollster = { version = "0.4", optional = true }