use dioxus::prelude::*;
#[css_module("/src/components/card/style.css")]
struct Styles;
#[component]
pub fn Card(
#[props(extends=GlobalAttributes)] attributes: Vec<Attribute>,
children: Element,
) -> Element {
rsx! {
div {
class: Styles::dx_card,
"data-slot": "card",
..attributes,
{children}
}
}
}
#[component]
pub fn CardHeader(
#[props(extends=GlobalAttributes)] attributes: Vec<Attribute>,
children: Element,
) -> Element {
rsx! {
div {
class: Styles::dx_card_header,
"data-slot": "card-header",
..attributes,
{children}
}
}
}
#[component]
pub fn CardTitle(
#[props(extends=GlobalAttributes)] attributes: Vec<Attribute>,
children: Element,
) -> Element {
rsx! {
div {
class: Styles::dx_card_title,
"data-slot": "card-title",
..attributes,
{children}
}
}
}
#[component]
pub fn CardDescription(
#[props(extends=GlobalAttributes)] attributes: Vec<Attribute>,
children: Element,
) -> Element {
rsx! {
div {
class: Styles::dx_card_description,
"data-slot": "card-description",
..attributes,
{children}
}
}
}
#[component]
pub fn CardAction(
#[props(extends=GlobalAttributes)] attributes: Vec<Attribute>,
children: Element,
) -> Element {
rsx! {
div {
class: Styles::dx_card_action,
"data-slot": "card-action",
..attributes,
{children}
}
}
}
#[component]
pub fn CardContent(
#[props(extends=GlobalAttributes)] attributes: Vec<Attribute>,
children: Element,
) -> Element {
rsx! {
div {
class: Styles::dx_card_content,
"data-slot": "card-content",
..attributes,
{children}
}
}
}
#[component]
pub fn CardFooter(
#[props(extends=GlobalAttributes)] attributes: Vec<Attribute>,
children: Element,
) -> Element {
rsx! {
div {
class: Styles::dx_card_footer,
"data-slot": "card-footer",
..attributes,
{children}
}
}
}