cranpose 0.1.13

Cranpose runtime and UI facade
Documentation
[package]
name = "cranpose"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
authors.workspace = true
keywords.workspace = true
categories.workspace = true
readme = "README.md"
description = "Cranpose runtime and UI facade"

[package.metadata.cargo-machete]
ignored = ["cranpose-render-pixels"]

[features]
default = []
desktop = [
    "cranpose-app-shell/clipboard-native",
    "cranpose-platform-desktop-winit",
    "dep:x11rb",
    "dep:winit",
]
ios = []
android = ["cranpose-platform-android"]
web = ["cranpose-platform-web", "dep:wasm-bindgen", "dep:web-sys"]
renderer-pixels = ["cranpose-render-pixels"]
renderer-wgpu = ["cranpose-render-wgpu", "dep:wgpu", "dep:pollster"]
robot = ["cranpose-app-shell/test-support"] # Enable robot testing support (cranpose-ui now always included)

[dependencies]
cranpose-app-shell = { workspace = true }
cranpose-core = { workspace = true }
cranpose-ui = { workspace = true }
cranpose-platform-desktop-winit = { workspace = true, optional = true }
cranpose-platform-android = { workspace = true, optional = true }
cranpose-platform-web = { workspace = true, optional = true }
cranpose-render-pixels = { workspace = true, optional = true }
cranpose-render-wgpu = { workspace = true, optional = true }
pollster = { version = "0.4", optional = true }
winit = { version = "0.31.0-beta.2", optional = true }
wasm-bindgen = { version = "0.2", optional = true }
web-sys = { version = "0.3", optional = true, features = [
    "Window",
    "Location",
    "Document",
    "Element",
    "HtmlElement",
    "HtmlCanvasElement",
    "CanvasRenderingContext2d",
    "Performance",
    "MouseEvent",
    "Touch",
    "TouchList",
    "TouchEvent",
    "PointerEvent",
    "WheelEvent",
    "KeyboardEvent",
    "CssStyleDeclaration",
    # Clipboard support
    "Navigator",
    "Clipboard",
    "ClipboardEvent",
    "DataTransfer",
] }
log = "0.4"
cranpose-services = { workspace = true, default-features = false }
thiserror = "2.0.18"
web-time = { workspace = true }

[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1"
wgpu = { version = "29.0", optional = true, default-features = false, features = [
    "std",
    "webgpu",
    "webgl",
    "wgsl",
] }

[target.'cfg(target_os = "android")'.dependencies]
android-activity = { workspace = true }
android_logger = "0.15"
jni = "0.22.4"
ndk = "0.9.0"
raw-window-handle = "0.6"
wgpu = { version = "29.0", optional = true, default-features = false, features = [
    "std",
    "parking_lot",
    "gles",
    "vulkan",
    "wgsl",
] }

[target.'cfg(all(target_os = "linux", not(target_arch = "wasm32")))'.dependencies]
x11rb = { version = "0.13.2", optional = true }
wgpu = { version = "29.0", optional = true, default-features = false, features = [
    "std",
    "parking_lot",
    "gles",
    "vulkan",
    "wgsl",
] }

[target.'cfg(target_os = "windows")'.dependencies]
wgpu = { version = "29.0", optional = true, default-features = false, features = [
    "std",
    "parking_lot",
    "dx12",
    "wgsl",
] }

[target.'cfg(target_os = "macos")'.dependencies]
wgpu = { version = "29.0", optional = true, default-features = false, features = [
    "std",
    "parking_lot",
    "metal",
    "wgsl",
] }

[target.'cfg(all(not(target_arch = "wasm32"), not(target_os = "android"), not(target_os = "linux"), not(target_os = "windows"), not(target_os = "macos")))'.dependencies]
wgpu = { version = "29.0", optional = true, default-features = false, features = [
    "std",
    "parking_lot",
    "gles",
    "vulkan",
    "wgsl",
] }