55 lines
1.8 KiB
TOML
55 lines
1.8 KiB
TOML
[package]
|
|
name = "obscura-js"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
|
|
[features]
|
|
default = []
|
|
# Builds obscura-net with its stealth (wreq) HTTP client and lets scripted
|
|
# fetch()/XHR be routed through it so JS-level requests carry the same Chrome
|
|
# TLS fingerprint and client hints as stealth navigation.
|
|
stealth = ["obscura-net/stealth"]
|
|
# Builds the obscura-render layout layer and exposes real box geometry to JS
|
|
# (getBoundingClientRect, elementFromPoint, offset*), and with paint enabled,
|
|
# rasterizes screenshots. Off by default so the scraping build stays lean.
|
|
render = ["dep:obscura-render", "obscura-render/paint"]
|
|
|
|
[build-dependencies]
|
|
deno_core = "0.350"
|
|
|
|
[dependencies]
|
|
obscura-dom = { workspace = true }
|
|
obscura-net = { workspace = true }
|
|
deno_core = "0.350"
|
|
tokio = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
url = { workspace = true }
|
|
# document.domain must reject public suffixes (including private suffixes such
|
|
# as github.io), not just compare dotted strings. `psl` embeds the Mozilla
|
|
# Public Suffix List and adds no runtime I/O.
|
|
psl = "2"
|
|
tracing = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
anyhow = { workspace = true }
|
|
reqwest = { workspace = true }
|
|
html5ever = { workspace = true }
|
|
deno_error = "0.6"
|
|
base64 = { workspace = true }
|
|
sha1 = "0.10"
|
|
sha2 = "0.10"
|
|
# WebCrypto (crypto.subtle) primitives. RustCrypto, pure Rust, no CMake/OpenSSL,
|
|
# and they unify on the digest 0.10 / cipher 0.4 stack already in the tree.
|
|
hmac = "0.12"
|
|
aes = "0.8"
|
|
aes-gcm = "0.10"
|
|
cbc = { version = "0.1", features = ["alloc"] }
|
|
ctr = "0.9"
|
|
pbkdf2 = { version = "0.12", default-features = false, features = ["hmac"] }
|
|
hkdf = "0.12"
|
|
# CSPRNG for getRandomValues / randomUUID (replaces Math.random).
|
|
getrandom = "0.2"
|
|
obscura-render = { workspace = true, optional = true }
|