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};

// imports: use canonrs::primitives::{FormValidationState, FormMethod, FormEnctype}; 

pub const FORM_API: ComponentApi = ComponentApi {
    id: "form",
    description: "Form component",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "action", kind: PropType::String, required: false, default: Some(""), description: "Prop value" },
        PropDef { name: "method", kind: PropType::Enum(&["post", "get"]), required: false, default: Some("post"), description: "Prop value" },
        PropDef { name: "enctype", kind: PropType::Enum(&["url-encoded", "multipart", "text"]), required: false, default: Some("url-encoded"), description: "Prop value" },
        PropDef { name: "validation", kind: PropType::Enum(&["idle", "submitting", "success", "error"]), required: false, default: Some("idle"), description: "Prop value" },
    ],
};

pub const FORMSECTION_API: ComponentApi = ComponentApi {
    id: "form-section",
    description: "Form component",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "aria_label", kind: PropType::String, required: false, default: None, description: "Accessible label for screen readers" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const FORMACTIONS_API: ComponentApi = ComponentApi {
    id: "form-actions",
    description: "Form component",
    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 FORMFIELD_API: ComponentApi = ComponentApi {
    id: "form-field",
    description: "Form component",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "validation", kind: PropType::Enum(&["idle", "valid", "invalid", "warning"]), required: false, default: Some("idle"), description: "Prop value" },
        PropDef { name: "disabled", kind: PropType::String, required: false, default: Some("enabled"), description: "Whether the component is disabled" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const FORMLABEL_API: ComponentApi = ComponentApi {
    id: "form-label",
    description: "Form component",
    props: &[
        PropDef { name: "children", kind: PropType::Children, required: true, default: None, description: "Child elements" },
        PropDef { name: "html_for", kind: PropType::String, required: false, default: Some(""), description: "Prop value" },
        PropDef { name: "required", kind: PropType::Bool, required: false, default: Some("false"), description: "Prop value" },
        PropDef { name: "class", kind: PropType::String, required: false, default: Some(""), description: "Additional CSS class names" },
    ],
};

pub const FORMHINT_API: ComponentApi = ComponentApi {
    id: "form-hint",
    description: "Form component",
    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 FORMERROR_API: ComponentApi = ComponentApi {
    id: "form-error",
    description: "Form component",
    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" },
    ],
};