pdfcraft/crates/ui-egui/Cargo.toml

71 lines
2.8 KiB
TOML

[package]
name = "pdfcraft-ui-egui"
description = "The egui shell of PdfCraft"
version.workspace = true
edition.workspace = true
license.workspace = true
[lints]
workspace = true
[dependencies]
pdfcraft-fonts = { workspace = true }
pdfcraft-engine = { workspace = true }
pdfcraft-render = { workspace = true }
pdfcraft-model = { workspace = true }
pdfcraft-platform = { workspace = true }
egui = { workspace = true, features = ["bytemuck"] }
egui_extras = { workspace = true }
eframe = { workspace = true, features = ["default_fonts", "wgpu", "accesskit", "persistence", "links"] }
serde = { workspace = true }
serde_json = { workspace = true }
log = { workspace = true }
# Hands rendered rasters to egui as its pixels, without copying; already in the tree through egui and wgpu.
bytemuck = { version = "1", features = ["extern_crate_alloc"] }
rfd = { workspace = true }
png = "0.18"
base64 = "0.22"
# Right-to-left file names in the chrome (egui shapes but does not reorder); already in the tree.
unicode-bidi = "0.3"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
# Control-channel tokens.
getrandom = "0.4"
# Create ▸ Clipboard (images; already in the tree through egui-winit).
arboard = { version = "3.6", default-features = false, features = ["image-data"] }
# Waits for native file pickers off the UI thread (already in the tree through wgpu).
pollster = "1.0"
# Checks that an installed fallback font parses and has the glyphs; the same skrifa egui uses.
skrifa = "0.44"
[target.'cfg(target_os = "macos")'.dependencies]
# Where the pointer is while files are dragged over the window (winit doesn't say): safe AppKit
# calls only. All three are already in the tree through arboard and rfd.
objc2 = "0.6"
objc2-app-kit = { version = "0.3", default-features = false, features = ["std", "NSEvent", "NSScreen"] }
objc2-foundation = { version = "0.3", default-features = false, features = ["std", "NSArray", "NSGeometry"] }
[target.'cfg(windows)'.dependencies]
# Auto interface language: the Windows display language, without starting a process.
sys-locale = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies]
rfd = { workspace = true, features = ["file-handle-inner"] }
wasm-bindgen-futures = "0.4"
wasm-bindgen = "0.2"
js-sys = "0.3"
web-sys = { version = "0.3", features = ["Window", "Document", "Element", "HtmlElement", "HtmlAnchorElement", "Blob", "BlobPropertyBag", "Url"] }
[dev-dependencies]
pdfcraft-xfa = { workspace = true }
pdfcraft-cos = { workspace = true }
egui_kittest = { workspace = true, features = ["eframe", "wgpu"] }
image = { version = "0.25", default-features = false, features = ["png"] }
# Glyph-coverage test of the interface fonts; the same skrifa pdfcraft-fonts already uses.
skrifa = "0.44"
[build-dependencies]
serde_json = { workspace = true }
toml = "1"