[package]
name = "raxon"
description = "A reactive, signal-driven native UI framework for Rust."
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
readme = "README.md"
repository = "https://github.com/1homsi/raxon"
homepage = "https://github.com/1homsi/raxon"
keywords = ["ui", "native", "ios", "reactive", "mobile"]
categories = ["gui", "os::macos-apis"]

[lints.rust]
missing_docs = "warn"

[features]
default = []
testing = []

[dependencies]
futures = { version = "0.3", default-features = false, features = ["executor", "std"] }
tungstenite = { version = "0.24", default-features = false, features = ["handshake"] }
ureq = { version = "2", features = [] }
serde = { version = "1" }
serde_json = { version = "1" }
rusqlite = { version = "0.31", features = ["bundled"] }
taffy = "0.7"

[target.'cfg(target_os = "ios")'.dependencies]
objc2 = "0.6"
objc2-foundation = { version = "0.3", features = [
    "NSString",
    "NSObject",
    "NSNotification",
    "NSThread",
    "NSRunLoop",
    "NSUserDefaults",
    "NSData",
] }
objc2-ui-kit = { version = "0.3", features = [
    "UIResponder",
    "UIView",
    "UILabel",
    "UIButton",
    "UIControl",
    "UIColor",
    "UIFont",
    "UIScreen",
    "UIWindow",
    "UIViewController",
    "UIApplication",
    "UIGeometry",
    "UIImageView",
    "UIImage",
    "UISwitch",
    "UISlider",
    "UISegmentedControl",
    "UIStepper",
    "UITextField",
    "UITextView",
    "UIGestureRecognizer",
    "UITapGestureRecognizer",
    "UILongPressGestureRecognizer",
    "UIPanGestureRecognizer",
    "UIPinchGestureRecognizer",
    "UIRotationGestureRecognizer",
    "UIScrollView",
    "UIActivityIndicatorView",
    "UIProgressView",
    "UITraitCollection",
    "UIInterface",
] }
objc2-quartz-core = { version = "0.3", features = [
    "CADisplayLink",
    "CALayer",
    "CAGradientLayer",
] }
objc2-core-foundation = { version = "0.3", features = ["CFCGTypes"] }
objc2-core-graphics = { version = "0.3", features = ["CGColor"] }
block2 = "0.6"
