[package] authors = ["Warp Team "] edition = "2021" name = "warpui_extras" version = "0.0.0" publish.workspace = true license.workspace = true [features] default = ["secure_storage", "user_preferences", "user_preferences-file"] secure_storage = ["dep:security-framework", "dep:secret-service", "dep:ouroboros"] test-util = [] user_preferences = ["dep:cocoa", "dep:objc", "dep:gloo-storage"] user_preferences-file = ["user_preferences", "dep:serde", "dep:serde_json"] user_preferences-toml = ["user_preferences", "dep:serde", "dep:serde_json", "dep:toml_edit"] [dependencies] anyhow.workspace = true log.workspace = true async-channel.workspace = true serde = { workspace = true, optional = true } serde_json = { workspace = true, optional = true } sha2.workspace = true toml_edit = { workspace = true, optional = true } thiserror.workspace = true warpui.workspace = true [dev-dependencies] # Enable the `test-util` feature for our own package when running tests. warpui_extras = { path = ".", features = ["test-util"] } tempfile.workspace = true [target.'cfg(target_os = "macos")'.dependencies] cocoa = { workspace = true, optional = true } objc = { workspace = true, optional = true } security-framework = { version = "2.0.0", optional = true } [target.'cfg(target_os = "linux")'.dependencies] ouroboros = { version = "0.18", optional = true } rand = "0.8.5" ring = "0.17.13" secret-service = {version = "5.0.0", features = ["rt-async-io-crypto-rust"], optional = true} [target.'cfg(target_family = "wasm")'.dependencies] gloo-storage = { version = "0.3.0", optional = true } [target.'cfg(target_os = "windows")'.dependencies] windows = { workspace = true, features = ["Win32_Security_Cryptography", "Win32_UI_Shell"] } windows-registry = { workspace = true } windows-result = { workspace = true }