#[derive(Clone)]
pub struct Response {
    pub content_type: &'static str,
    pub data: Vec<u8>,
}

impl Response {
    pub fn html(html: String) -> Self {
        Self {
            content_type: "text/html; charset=utf-8",
            data: html.into_bytes(),
        }
    }

    pub fn css(css: String) -> Self {
        Self {
            content_type: "text/css; charset=utf-8",
            data: css.into_bytes(),
        }
    }

    pub fn png(data: Vec<u8>) -> Self {
        Self {
            content_type: "image/png",
            data,
        }
    }

    pub fn ico(data: Vec<u8>) -> Self {
        Self {
            content_type: "image/x-icon",
            data,
        }
    }
}