[package]
name = "i-slint-core"
version = "0.3.4"
authors = ["Slint Developers <info@slint-ui.com>"]
edition = "2021"
license = "GPL-3.0-only OR LicenseRef-Slint-commercial"
description = "Internal Slint Runtime Library."
repository = "https://github.com/slint-ui/slint"
homepage = "https://slint-ui.com"
categories = ["gui", "development-tools"]
keywords = ["gui", "ui", "toolkit", "graphics", "design"]
rust-version.workspace = true
[lib]
path = "lib.rs"
[features]
ffi = []
libm = ["num-traits/libm", "euclid/libm"]
rtti = []
std = ["euclid/std", "once_cell/std", "scoped-tls-hkt", "lyon_path", "lyon_algorithms", "lyon_geom", "lyon_extra", "instant", "image-decoders", "svg"]
unsafe-single-threaded = []
unicode = ["unicode-script", "unicode-linebreak"]
systemfonts = ["fontdb", "rustybuzz", "fontdue"]
image-decoders = ["image", "clru"]
svg = ["resvg", "usvg", "tiny-skia"]
box-shadow-cache = []
default = ["std", "unicode"]
[dependencies]
i-slint-common = { version = "=0.3.4", path = "../common" }
i-slint-core-macros = { version = "=0.3.4", path = "../core-macros" }
const-field-offset = { version = "0.1", path = "../../helper_crates/const-field-offset" }
vtable = { version="0.1.9", path = "../../helper_crates/vtable" }
atomic-polyfill = "1.0.1"
auto_enums = "0.8.0"
cfg-if = "1"
derive_more = "0.99.5"
euclid = { version = "0.22.1", default-features = false }
instant = { version = "0.1", features = [ "now" ], optional = true }
lyon_algorithms = { version = "1.0" , optional = true }
lyon_geom = { version = "1.0", optional = true }
lyon_path = { version = "1.0" , optional = true }
lyon_extra = { version = "1.0.1", optional = true }
num-traits = { version = "0.2", default-features = false }
once_cell = { version = "1.5", default-features = false, features = ["atomic-polyfill"] }
pin-project = "1"
pin-weak = { version = "1.1", default-features = false }
rgb = "0.8.27"
scoped-tls-hkt = { version = "0.1", optional = true }
scopeguard = { version = "1.1.0", default-features = false }
slab = { version = "0.4.3", default-features = false }
static_assertions = "1.1"
strum = { version = "0.24.0", default-features = false, features = ["derive"] }
unicode-segmentation = "1.8.0"
unicode-linebreak = { version = "0.1.2", optional = true }
unicode-script = { version = "0.5.3", optional = true }
embedded-graphics = { version = "0.7.1", optional = true }
integer-sqrt = { version = "0.1.5" }
image = { version = "0.24.0", optional = true, default-features = false, features = [ "png", "jpeg" ] }
clru = { version = "0.6.0", optional = true }
resvg = { version= "0.28.0", optional = true, default-features = false }
usvg = { version= "0.28.0", optional = true, default-features = false }
tiny-skia = { version= "0.8.2", optional = true, default-features = false }
[target.'cfg(target_arch = "wasm32")'.dependencies]
instant = { version = "0.1", features = [ "wasm-bindgen", "now" ] }
wasm-bindgen = { version = "0.2" }
web-sys = { version = "0.3", features = [ "HtmlImageElement" ] }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
fontdb = { version = "0.10", optional = true, features = ["memmap", "fontconfig"] }
rustybuzz = { version = "0.6.0", optional = true }
fontdue = { version = "0.7.1", optional = true }
[dev-dependencies]
slint = { path = "../../api/rs/slint", default-features = false, features = ["std", "compat-0-3-0"] }
i-slint-backend-testing = { path="../backends/testing" }
rustybuzz = "0.6.0"
ttf-parser = "0.17.0"
fontdb = { version = "0.10.0" }
image = { version = "0.24.0", default-features = false, features = [ "png" ] }
pin-weak = "1"
tiny-skia = "0.8.2"