1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
//! GSAP animations for Autumn, with typed Rust builders and htmx support.
//!
//! 1. Add [`GsapPlugin`] to the app.
//! 2. Put [`gsap_script()`] in the page `<head>`.
//! 3. Animate with [`Gsap`], [`Timeline`] or raw `data-gsap` attributes.
//!
//! ```rust,no_run
//! use std::time::Duration;
//! use autumn_plugin_gsap::{Gsap, GsapPlugin, Split, gsap_script};
//! use autumn_web::prelude::*;
//!
//! #[get("/")]
//! async fn index() -> Markup {
//! html! {
//! html {
//! head { (gsap_script()) }
//! body {
//! (Gsap::fade_up().split(Split::Chars).wrap(html! { h1 { "Hello" } }))
//! p data-gsap="fade" data-gsap-delay="0.2" { "World" }
//! }
//! }
//! }
//! }
//!
//! # async fn run() {
//! autumn_web::app()
//! .plugin(GsapPlugin::new())
//! .routes(routes![index])
//! .run()
//! .await;
//! # }
//! ```
//!
//! The crate vendors GSAP 3.15.0 with ScrollTrigger and SplitText. You need no npm and no bundler.
//! `init.js` reads the attributes on page load and on each `htmx:load`.
//! It reverts the animations of content that htmx removes.
//! When the user prefers reduced motion, elements do not animate.
//!
//! The GSAP files use the [GSAP Standard License](https://gsap.com/standard-license).
//! The plugin code uses Apache-2.0.
pub use ;
pub use ;
pub use ;
pub use Repeat;
pub use ;
pub use Props;
pub use ;
pub use ;
pub use ;
pub use ;