canonrs-server 0.1.0

CanonRS server-side rendering support
// AUTO-GENERATED by build.rs — do not edit manually.
// Source: *_boundary.rs + builder.yaml
use crate::catalog_types::{ComponentApi, PropDef, PropType};

pub const CAROUSEL_API: ComponentApi = ComponentApi {
    id: "carousel",
    description: "Image carousel slider",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "initial_index", kind: PropType::Number, required: false, default: Some("0"), description: "Prop value" },
        PropDef { name: "autoplay", kind: PropType::String, required: false, default: Some("off"), description: "Prop value" },
        PropDef { name: "interval", kind: PropType::Number, required: false, default: Some("5000"), description: "Prop value" },
        PropDef { name: "loop_state", kind: PropType::String, required: false, default: Some("on"), description: "Prop value" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const CAROUSELTRACK_API: ComponentApi = ComponentApi {
    id: "carousel-track",
    description: "Image carousel slider",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const CAROUSELITEM_API: ComponentApi = ComponentApi {
    id: "carousel-item",
    description: "Image carousel slider",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
        PropDef { name: "active", kind: PropType::Bool, required: false, default: Some("false"), description: "Active/selected state" },
    ],
};

pub const CAROUSELPREV_API: ComponentApi = ComponentApi {
    id: "carousel-prev",
    description: "Image carousel slider",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const CAROUSELNEXT_API: ComponentApi = ComponentApi {
    id: "carousel-next",
    description: "Image carousel slider",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const CAROUSELINDICATORS_API: ComponentApi = ComponentApi {
    id: "carousel-indicators",
    description: "Image carousel slider",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const CAROUSELDOT_API: ComponentApi = ComponentApi {
    id: "carousel-dot",
    description: "Image carousel slider",
    props: &[
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
        PropDef { name: "aria_label", kind: PropType::String, required: false, default: Some(""), description: "Accessible label for screen readers" },
        PropDef { name: "active", kind: PropType::Bool, required: false, default: Some("false"), description: "Active/selected state" },
    ],
};