sauron_core/
lib.rs

1#![deny(
2    warnings,
3    missing_docs,
4    missing_copy_implementations,
5    trivial_casts,
6    trivial_numeric_casts,
7    unstable_features,
8    unused_import_braces
9)]
10#![deny(unsafe_code)]
11#![deny(clippy::all)]
12
13//! The core components of sauron
14#[macro_use]
15extern crate doc_comment;
16
17/// prelude
18pub mod prelude {
19    pub use crate::html;
20    pub use crate::html::{
21        attributes::commons::*,
22        attributes::key,
23        attributes::{
24            attr, checked, class, classes, classes_flag, disabled, empty_attr, r#type, styles_flag,
25        },
26        br, comment,
27        commons::*,
28        hr, img, input, lazy_view_if, text,
29        units::{ch, cm, deg, ex, grad, mm, ms, percent, pt, px, rad, rgb, rgba, s, turn, vh, vw},
30        view_if,
31    };
32
33    pub use crate::svg;
34    pub use crate::svg::attributes::commons::*;
35    pub use crate::svg::attributes::special::*;
36    pub use crate::svg::commons::*;
37    pub use crate::svg::special::*;
38    pub use crate::vdom::{
39        diff, Attribute, AttributeValue, Element, EventCallback, Node, Patch, TreePath, Value,
40    };
41
42    use cfg_if::cfg_if;
43    cfg_if! {if #[cfg(feature = "with-dom")] {
44        pub use web_sys;
45        pub use wasm_bindgen_futures;
46        pub use js_sys;
47        pub use wasm_bindgen;
48        #[doc(hidden)]
49        pub use wasm_bindgen::prelude::*;
50        pub use serde_wasm_bindgen;
51        pub use crate::html::events::*;
52        pub use crate::dom::{Application, SkipDiff, skip_if, events, Program, document, Document, now, window, Window, Dispatch,
53            AnimationFrameHandle, Component, StatefulComponent, Effects, Measurements, MountAction,
54            MountTarget, Cmd, TimeoutCallbackHandle, DomAttrValue,
55            stateful_component, Time,
56        };
57    }}
58}
59
60#[macro_use]
61pub mod html;
62#[macro_use]
63pub mod svg;
64pub mod dom;
65pub mod vdom;