Crates.io | dragula |
lib.rs | dragula |
version | 0.1.0 |
source | src |
created_at | 2021-01-10 14:38:39.987366 |
updated_at | 2021-01-10 14:38:39.987366 |
description | Rust WASM wrapper for Dragula |
homepage | |
repository | https://github.com/Xavientois/dragula-rs |
max_upload_size | |
id | 338713 |
size | 64,499 |
Drag and drop so simple it hurts
Wrapper for the Dragula Javascript library.
Dragula provides the easiest possible API to make drag and drop a breeze in your applications.
use dragula::*;
let doc = web_sys::window().unwrap().document().unwrap();
let element = doc.get_element_by_id("drag-container").unwrap();
let drake = dragula(&[element]);
You can also provide an Options
instance to specify
behaviour of certain drag-and-drop features.
use dragula::*;
use dragula::options::Direction;
use web_sys::Element;
//--snip--
let options = Options {
is_container: Box::new(|el| {
Element::from(el).class_list().contains("drag-container")
}),
direction: Direction::Horizontal,
revert_on_spill: true,
..Options::default()
};
let drake = dragula_options(&[element], options);
//--snip--
cargo
Featuresjs-sys
crate. Most of this crate relies solely on wasm-bindgen
, so disabling this
feature currently just prevents you from getting containers on an existing
Drake. The main reason you might want to disable this would be to improve compile
times.