1#![warn(missing_docs)]
22
23mod builder;
24mod draw;
25mod flex;
26mod graph;
27mod handles;
28mod icon;
29mod image;
30#[cfg(feature = "math")]
31mod math;
32pub mod node_api;
33mod passes;
34mod place;
35pub mod post;
36mod scale;
37mod shader;
38mod sim;
39mod svg;
40mod text;
41mod theme;
42mod trim;
43pub mod video;
44#[cfg(not(target_arch = "wasm32"))]
45mod wgsl_cpu;
46pub use video::{VideoInfo, VideoSource, set_video_opener};
47
48pub use builder::{
49 BaseProps, CameraBuilder, CircleBuilder, CodeBuilder, CustomBuilder, EffectBuilder,
50 GridBuilder, GroupBuilder, ImgBuilder, LayoutBuilder, LineBuilder, NodeBuilder,
51 ParticlesBuilder, PathBuilder, PolygonBuilder, RectBuilder, ShaderBuilder, StarBuilder,
52 TxtBuilder, VideoBuilder,
53};
54pub use builder::{lens_drops, ripple, waves};
55pub use draw::{
56 DrawCtx, DrawItem, DrawRng, Layer, LineCap, LineJoin, Paint, Pen, Primitive, Shadow,
57 StrokeStyle,
58};
59pub use graph::{
60 Direction, InspectNode, Justify, LayoutAlign, NodeData, NodeId, NodeKind, SceneGraph, add_site,
61};
62pub use handles::{
63 Camera, Circle, Code, CodeText, CodeTween, Custom, Effect, Grid, Group, Img, Layout, Line,
64 Node, Particles, Path, Polygon, Rect, SLIDE_DISTANCE, Shader, Star, Svg, Txt, Video, View,
65};
66pub use icon::{Icon, IconBuilder, IconStyle};
67pub use image::{ImageSource, RasterImage, VectorImage, VectorShape};
68#[cfg(feature = "math")]
69pub use math::{Math, MathBuilder};
70pub use node_api::Draw;
71pub use passes::{Pass, PassKind, layer_fingerprint, pass_graph, shadow_fingerprint};
72pub use place::{Edge, Percent, Place, SafeArea, Side, Span, pct};
73pub use post::{Input, Shade, ShadeOp, apply as apply_shade, apply_with as apply_shade_with};
74pub use scale::{IntoScale, ScaleSignal};
75#[cfg(not(target_arch = "wasm32"))]
76pub use shader::CustomShade;
77pub use shader::{ShaderDiag, draft_shaders, set_frame_rate, set_shader_budget_ms};
78pub use trim::trim;
79
80pub use oxframe_core::{BlendMode, Color, Gradient, GradientKind, Signal};
81pub use oxframe_text::{Align as TextAlign, Lang, MONO, SANS};
82pub use text::{CodeTheme, RichSpan, span};
83pub use theme::current as current_theme;
85pub use theme::enter as enter_theme;
86pub use theme::{
87 Corner, Ink,
88 Ink::{Accent, Background, Danger, Muted, OnAccent, Success, Surface, Text, Warning},
89 IntoPaint, Len, Motion, Pace,
90 Pace::{Fast, Normal, Slow},
91 Scale, ShadowSpec, Step,
92 Step::{Lg, Md, Sm, Xl, Xs},
93 Theme, TypeRole, TypeScale, TypeStyle,
94};