[package]
name = "iced_aw"
version = "0.13.1"
authors = [
  "Kaiden42 <gitlab@tinysn.com>",
  "Andrew Wheeler <genusistimelord@gmail.com>",
]
edition = "2024"
description = "Additional widgets for the Iced GUI library"
license = "MIT"
homepage = "https://iced.rs"
repository = "https://github.com/iced-rs/iced_aw"
readme = "README.md"
keywords = ["gui", "graphics", "interface", "widgets", "iced"]
categories = ["gui"]
rust-version = "1.88"

[features]
default = ["full"]

badge = []
card = []
date_picker = ["chrono"]
color_picker = ["iced_widget/canvas"]
tab_bar = []
tabs = ["tab_bar"]
time_picker = ["chrono", "iced_widget/canvas"]
wrap = []
number_input = ["num-format", "num-traits", "typed_input"]
typed_input = []
selection_list = []
menu = []
quad = []
spinner = []
context_menu = []
slide_bar = []
drop_down = []
sidebar = []
labeled_frame = []
custom_layout = []
debug_log = ["log"]

full = [
  "badge",
  "card",
  "number_input",
  "date_picker",
  "color_picker",
  "tab_bar",
  "tabs",
  "time_picker",
  "slide_bar",
  "wrap",
  "selection_list",
  "quad",
  "context_menu",
  "spinner",
  "drop_down",
  "menu",
  "sidebar",
  "labeled_frame",
  "custom_layout",
]

[dev-dependencies]
iced_aw = { path = "./" }
getrandom = { version = "0.4.1", features = ["wasm_js"] }
rand = "0.10.0"
env_logger = "0.11.9"                                        # For wrap example
iced_test = "0.14" # for UI testing

[dev-dependencies.iced]
version = "0.14.0"
features = ["advanced"]

[dependencies]
iced_core = { version = "0.14.0" }
iced_widget = { version = "0.14.2" }

cfg-if = "1.0"
chrono = { version = "0.4.44", optional = true, features = ["wasmbind"] }
iced_fonts = { version = "0.3.0", features = [
  "advanced_text",
]}
num-format = { version = "0.4.4", optional = true }
num-traits = { version = "0.2.19", optional = true }
web-time = "1.1.0"
log = {version = "0.4", optional=true}

[[example]]
name = "badge"
required-features = ["badge"]

[[example]]
name = "context_menu"
required-features = ["context_menu"]

[[example]]
name = "drop_down"
required-features = ["drop_down"]

[[example]]
name = "drop_down_test"
required-features = ["drop_down"]

[[example]]
name = "card"
required-features = ["card"]

[[example]]
name = "color_picker"
required-features = ["color_picker", "iced/smol"]

[[example]]
name = "date_picker"
required-features = ["date_picker"]

[[example]]
name = "menu"
required-features = ["menu"]

[[example]]
name = "number_input"
required-features = ["number_input"]

[[example]]
name = "selection_list"
required-features = ["selection_list"]

[[example]]
name = "side_bar"
required-features = ["sidebar", "iced/image"]

[[example]]
name = "slide_bar"
required-features = ["slide_bar"]

[[example]]
name = "spinner"
required-features = ["spinner"]

[[example]]
name = "tab_bar"
required-features = ["tab_bar"]

[[example]]
name = "tabs"
required-features = ["tabs", "iced/image"]

[[example]]
name = "time_picker"
required-features = ["time_picker"]

[[example]]
name = "typed_input"
required-features = ["typed_input"]

[[example]]
name = "widget_id_return"
required-features = ["number_input"]

[[example]]
name = "wrap"
required-features = ["wrap", "number_input"]

[[example]]
name = "labeled_frame"
required-features = ["labeled_frame"]

[[example]]
name = "custom_layout"
required-features = ["labeled_frame"]

[lib]
crate-type = ["cdylib", "rlib"]
