85 lines
3.0 KiB
TOML
85 lines
3.0 KiB
TOML
[package]
|
|
name = "ruffle_web"
|
|
description = "Web (WASM) bindings to the Ruffle flash player"
|
|
authors.workspace = true
|
|
edition.workspace = true
|
|
homepage.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
version.workspace = true
|
|
publish = false # This crate is useless alone, people should use the npm package
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[lib]
|
|
crate-type = ["cdylib", "rlib"]
|
|
|
|
[features]
|
|
default = ["canvas", "console_error_panic_hook", "webgl", "wgpu-webgl", "webgpu"]
|
|
|
|
# core features
|
|
avm_debug = ["ruffle_core/avm_debug"]
|
|
lzma = ["ruffle_core/lzma"]
|
|
jpegxr = ["ruffle_core/jpegxr"]
|
|
|
|
# web features
|
|
canvas = ["ruffle_render_canvas"]
|
|
webgl = ["ruffle_render_webgl"]
|
|
webgpu = ["ruffle_render_wgpu"]
|
|
wgpu-webgl = ["ruffle_render_wgpu", "ruffle_render_wgpu/webgl"]
|
|
profiling = []
|
|
|
|
[dependencies]
|
|
console_error_panic_hook = { version = "0.1.7", optional = true }
|
|
slotmap = { workspace = true }
|
|
js-sys = { workspace = true }
|
|
tracing = { workspace = true, features = ["log"] }
|
|
tracing-subscriber = { version = "0.3.18", default-features = false, features = ["registry"] }
|
|
tracing-log = "0.2.0"
|
|
tracing-wasm = "0.2.1"
|
|
ruffle_render_canvas = { path = "../render/canvas", optional = true }
|
|
ruffle_web_common = { path = "common" }
|
|
ruffle_render = { path = "../render" }
|
|
ruffle_render_webgl = { path = "../render/webgl", optional = true }
|
|
ruffle_render_wgpu = { path = "../render/wgpu", optional = true }
|
|
ruffle_video_software = { path = "../video/software" }
|
|
url = { workspace = true }
|
|
wasm-bindgen = { workspace = true }
|
|
wasm-bindgen-futures = "0.4.42"
|
|
serde-wasm-bindgen = "0.6.5"
|
|
chrono = { workspace = true, features = ["wasmbind", "clock"] }
|
|
getrandom = { version = "0.2", features = ["js"] }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
thiserror = { workspace = true }
|
|
base64 = "0.22.0"
|
|
async-channel = { workspace = true }
|
|
futures-util = { version = "0.3.30", features = ["sink"] }
|
|
gloo-net = { version = "0.5.0", default-features = false, features = ["websocket"] }
|
|
rfd = { version = "0.14.1", features = ["file-handle-inner"] }
|
|
wasm-streams = "0.4.0"
|
|
futures = { workspace = true }
|
|
zip = { version = "2.1.3", default-features = false}
|
|
|
|
[dependencies.ruffle_core]
|
|
path = "../core"
|
|
features = ["audio", "mp3", "nellymoser", "default_compatibility_rules", "default_font", "serde"]
|
|
|
|
[dependencies.web-sys]
|
|
version = "0.3.69"
|
|
features = [
|
|
"AddEventListenerOptions", "AudioBuffer", "AudioBufferSourceNode", "AudioContext",
|
|
"AudioDestinationNode", "AudioNode", "AudioParam", "Blob", "BlobPropertyBag",
|
|
"ChannelMergerNode", "ChannelSplitterNode", "ClipboardEvent", "DataTransfer", "Element", "Event",
|
|
"EventTarget", "GainNode", "Headers", "HtmlCanvasElement", "HtmlDocument", "HtmlElement", "HtmlFormElement",
|
|
"HtmlInputElement", "HtmlTextAreaElement", "KeyboardEvent", "Location", "PointerEvent",
|
|
"Request", "RequestInit", "Response", "Storage", "WheelEvent", "Window", "ReadableStream", "RequestCredentials",
|
|
"Url", "Clipboard", "FocusEvent"
|
|
]
|
|
|
|
[package.metadata.cargo-machete]
|
|
ignored = [
|
|
# Not used directly, declared only to enable its `js` feature.
|
|
"getrandom"
|
|
]
|