forked from 1b-agent/opencadstudio-upstream
The operations docs/automation/API-SPEC.md (PR #1383) describes, brought over from huaninstratech/OpenCADStudio so the specification no longer runs ahead of the code: - entity CRUD: entities_create, entities_delete, entities_transform, entities_copy_to, and `where` filters on query - blocks and export: block_define, block_delete, a normalised wblock - publishing: layout_create, page_setup_set, plot (per_page included) - metadata: sysvar, xdata_set / xdata_get, file_identity - collections: group_create, selection_set_save / load - control plane: batch, events, view_focus, close - the REST transport: `--http <port>`, the /api/v1 routes and their OpenAPI 3 description - person-in-the-loop picks: user_select and getpoint, hosted by the GUI over the same REST routes, with on-screen pending signals Taken from the fork's commits b7a7ed80, 69396b42, 64f1cf6a, c3aafc8e, bb5a7bfa, 52317a5c, 50d293ba, b90e194f, 517c6397, 53a5c4c9, a49ac045, 37de5a46, a78b1822, 6d9aed2a, 33f522da, 5b5cafe2, 02a7e78d, 94df40dc, fd5bc14d, 485fac61 and 2c5fc994. Left out on purpose: 37de5a46 also removed the donation surface (the Patreon fetch, the donation prompt, the Start-page supporters rail, the DONATE command and its locale strings) and replaced the About dialog's call to action; that is the fork's own product decision and stays out. The fork's version bump and its unrelated IFC/BIM work are not part of this. Adapted while porting: the REST server and the GUI bridge are desktop-only and a template start is refused in the web build, so the wasm target still compiles; the two plot tests read the PDF through the shared stream helper, because exported streams are Flate-compressed; the benches set the new crosshair field; comments and docs describe each operation in its own terms rather than by another product's API names. Co-Authored-By: Claude Opus 5.5 <[email protected]>
32 lines
600 B
Rust
32 lines
600 B
Rust
#![allow(non_snake_case)]
|
|
#![recursion_limit = "256"]
|
|
|
|
pub mod app;
|
|
#[cfg(not(target_arch = "wasm32"))]
|
|
pub mod cli;
|
|
pub mod command;
|
|
pub mod config;
|
|
pub mod discussions;
|
|
pub mod entities;
|
|
#[cfg(not(target_arch = "wasm32"))]
|
|
pub mod gpu_backend;
|
|
pub mod i18n;
|
|
pub(crate) mod input;
|
|
pub mod io;
|
|
#[cfg(not(target_arch = "wasm32"))]
|
|
pub mod mcp;
|
|
pub mod modules;
|
|
#[cfg(not(target_arch = "wasm32"))]
|
|
pub(crate) mod network;
|
|
pub mod par;
|
|
pub mod patreon;
|
|
pub mod perf;
|
|
pub mod plugin;
|
|
#[cfg(not(target_arch = "wasm32"))]
|
|
pub mod rest;
|
|
pub mod scene;
|
|
pub mod snap;
|
|
pub mod sys;
|
|
pub mod ui;
|
|
pub mod videos;
|