[workspace]

resolver = "2"
members = [
  "komorebi",
  "komorebi-client",
  "komorebi-gui",
  "komorebi-layouts",
  "komorebic",
  "komorebic-no-console",
  "komorebi-bar",
  "komorebi-themes",
  "komorebi-shortcuts",
]

[workspace.dependencies]
clap = { version = "4", features = ["derive", "wrap_help"] }
chrono-tz = "0.10"
chrono = "0.4"
crossbeam-channel = "0.5"
crossbeam-utils = "0.8"
color-eyre = "0.6"
eframe = "0.33"
egui_extras = "0.33"
dirs = "6"
dunce = "1"
hotwatch = "0.5"
schemars = "1.1"
lazy_static = "1"
serde = { version = "1", features = ["derive"] }
serde_json = { package = "serde_json_lenient", version = "0.2" }
serde_yaml = "0.9"
strum = { version = "0.28", features = ["derive"] }
tracing = "0.1"
tracing-appender = "0.2"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
parking_lot = "0.12"
paste = "1"
sysinfo = "0.38"
uds_windows = "1"
win32-display-data = { git = "https://github.com/LGUG2Z/win32-display-data", rev = "8c42d8db257d30fe95bc98c2e5cd8f75da861021" }
windows-numerics = { version = "0.3" }
windows-implement = { version = "0.60" }
windows-interface = { version = "0.59" }
windows-core = { version = "0.62" }
shadow-rs = "1"
which = "8"

[workspace.dependencies.windows]
version = "0.62"
features = [
  "Foundation_Numerics",
  "Win32_Devices",
  "Win32_Devices_Display",
  "Win32_System_Com",
  "Win32_UI_Shell_Common",           # for IObjectArray
  "Win32_Foundation",
  "Win32_Globalization",
  "Win32_Graphics_Dwm",
  "Win32_Graphics_Gdi",
  "Win32_Graphics_Direct2D",
  "Win32_Graphics_Direct2D_Common",
  "Win32_Graphics_Dxgi_Common",
  "Win32_System_LibraryLoader",
  "Win32_System_Power",
  "Win32_System_RemoteDesktop",
  "Win32_System_Threading",
  "Win32_UI_Accessibility",
  "Win32_UI_HiDpi",
  "Win32_UI_Input_KeyboardAndMouse",
  "Win32_UI_Shell",
  "Win32_UI_Shell_Common",
  "Win32_UI_WindowsAndMessaging",
  "Win32_System_SystemServices",
  "Win32_System_WindowsProgramming",
  "Media",
  "Media_Control",
]

[profile.release-opt]
inherits = "release"
lto = true
panic = "abort"
codegen-units = 1
strip = true

[workspace.metadata.crane]
name = "komorebi-workspace"
