@@ -14,17 +14,17 @@ publish = false
1414release = true
1515
1616[lib ]
17- crate-type = [" cdylib" , " staticlib" ]
17+ crate-type = [" cdylib" , " staticlib" , " lib " ]
1818
1919[features ]
2020default = [" bundled-sqlite" , " unstable-msc4274" ]
2121bundled-sqlite = [" matrix-sdk/bundled-sqlite" ]
2222unstable-msc4274 = [" matrix-sdk-ui/unstable-msc4274" ]
23+ js = []
2324
2425[dependencies ]
2526anyhow.workspace = true
2627as_variant.workspace = true
27- async-compat = " 0.2.4"
2828extension-trait = " 1.0.1"
2929eyeball-im.workspace = true
3030futures-util.workspace = true
@@ -36,21 +36,18 @@ matrix-sdk-ui = { workspace = true, features = ["uniffi"] }
3636mime = " 0.3.16"
3737once_cell.workspace = true
3838ruma = { workspace = true , features = [" html" , " unstable-unspecified" , " unstable-msc3488" , " compat-unset-avatar" , " unstable-msc3245-v1-compat" , " unstable-msc4278" ] }
39- sentry-tracing = " 0.36.0"
4039serde.workspace = true
4140serde_json.workspace = true
4241thiserror.workspace = true
43- tokio = { workspace = true , features = [" rt-multi-thread" , " macros" ] }
4442tracing.workspace = true
4543tracing-appender = { version = " 0.2.2" }
4644tracing-core.workspace = true
4745tracing-subscriber = { workspace = true , features = [" env-filter" ] }
48- uniffi = { workspace = true , features = [" tokio" ] }
4946url.workspace = true
5047uuid = { version = " 1.4.1" , features = [" v4" ] }
5148zeroize.workspace = true
5249
53- [target .'cfg(not(target_os = "android"))' .dependencies .matrix-sdk ]
50+ [target .'cfg(all( not(target_os = "android"), not(target_family = "wasm") ))' .dependencies .matrix-sdk ]
5451workspace = true
5552features = [
5653 " anyhow" ,
@@ -64,7 +61,7 @@ features = [
6461 " uniffi" ,
6562]
6663
67- [target .'cfg(not(target_os = "android"))' .dependencies .sentry ]
64+ [target .'cfg(all( not(target_os = "android"), not(target_family = "wasm") ))' .dependencies .sentry ]
6865version = " 0.36.0"
6966default-features = false
7067features = [
@@ -77,6 +74,35 @@ features = [
7774 " reqwest" ,
7875]
7976
77+ [target .'cfg(target_family = "wasm")' .dependencies ]
78+ console_error_panic_hook = " 0.1.7"
79+ matrix-sdk-ui = { workspace = true , features = [" js" , " uniffi" ] }
80+ ruma-common = { workspace = true , features = [" js" ] }
81+ tokio = { workspace = true , features = [" sync" , " macros" ] }
82+ uniffi = { workspace = true , features = [" wasm-unstable-single-threaded" ] }
83+ wasm-rs-async-executor = " 0.9.0"
84+
85+ [target .'cfg(target_family = "wasm")' .dependencies .matrix-sdk ]
86+ workspace = true
87+ features = [
88+ " anyhow" ,
89+ " e2e-encryption" ,
90+ " experimental-widgets" ,
91+ " markdown" ,
92+ " rustls-tls" ,
93+ " socks" ,
94+ " indexeddb" ,
95+ " uniffi" ,
96+ ]
97+
98+ [target .'cfg(not(target_family = "wasm"))' .dependencies ]
99+ async-compat.workspace = true
100+ matrix-sdk-ui = { workspace = true , features = [" uniffi" ] }
101+ ruma-common = { workspace = true }
102+ sentry-tracing = " 0.36.0"
103+ tokio = { workspace = true , features = [" rt-multi-thread" , " macros" ] }
104+ uniffi = { workspace = true , features = [" tokio" ] }
105+
80106[target .'cfg(target_os = "android")' .dependencies ]
81107paranoid-android = " 0.2.1"
82108
0 commit comments