uniui_build 0.0.15

Builds uniui applicatins for different targets
pub const MODULE: &str = r#"
pub mod MODULE_NAME {
	use tide::Response;
	use tide::Request;
	use tide::Route;

	async fn html<T>(_: Request<T>) -> tide::Result {
		let v = include_bytes!("HTML_FILE_NAME");
		let rv: &[u8] = v;
		let mut response = Response::new(200);
		response.set_body(rv);
		response.set_content_type(tide::http::mime::HTML);
		return Ok(response);
	}

	async fn js<T>(_: Request<T>) -> tide::Result {
		let v = include_bytes!("JS_FILE_NAME");
		let rv: &[u8] = v;
		let mut response = Response::new(200);
		response.set_body(rv);
		response.set_content_type(tide::http::mime::JAVASCRIPT);
		return Ok(response);
	}

	async fn wasm<T>(_: Request<T>) -> tide::Result {
		let v = include_bytes!("WASM_FILE_NAME");
		let rv: &[u8] = v;
		let mut response = Response::new(200);
		response.set_body(rv);
		response.set_content_type(tide::http::mime::WASM);
		return Ok(response);
	}

	pub fn attach<'a, T: Clone>(mut route: Route<'a, T>)
		where T:'static + std::marker::Sync + std::marker::Send
	{
		route.at("").get(html);
		route.at(".js").get(js);
		route.at("_bg.wasm").get(wasm);
	}
}
"#;

pub const GLOBAL_PRE: &str = "
#[allow(dead_code)]
pub fn attach<T: 'static + Send + Sync + Clone>(app: &mut tide::Server<T>) {
";

pub const GLOBAL_MODULE: &str = "
	MODULE_NAME::attach(app.at(\"MODULE_PAGE_PATH\"));
";

pub const GLOBAL_POST: &str = "
}
";