dioxus_tailwindcss/
build.rs1pub use dioxus_class::build::*;
2
3use std::path::Path;
4use std::process::Command;
5
6pub fn tailwindcss<P: AsRef<Path> + Clone>(
7 path: P,
8 input: &str,
9 output: &str
10) -> Result<(), Box<dyn std::error::Error>> {
11 let mut cmd = Command::new("tailwindcss");
12 cmd.current_dir(path);
13 let result = cmd
14 .arg("-i").arg(input)
15 .arg("-o").arg(output).output()?;
16 if !result.status.success() {
17 Err(format!("tailwindcss failed: {} {} -> {:?}", input, output, result).into())
18 } else {
19 println!("cargo:warning=dioxus-tailwind::build::tailwindcss: {} {}", input, output);
20 let stdout = String::from_utf8(result.stdout)?;
21 for line in stdout.lines() {
22 println!("cargo:warning= {:#?}", line);
23 }
24 Ok(())
25 }
26}
27
28pub fn npx_tailwindcss<P: AsRef<Path> + Clone>(
29 path: P,
30 input: &str,
31 output: &str
32) -> Result<(), Box<dyn std::error::Error>> {
33 let mut cmd = Command::new("npx");
34 cmd.current_dir(path);
35 let result = cmd
36 .arg("tailwindcss")
37 .arg("-i").arg(input)
38 .arg("-o").arg(output).output()?;
39 if !result.status.success() {
40 Err(format!("tailwindcss failed: {} {} -> {:?}", input, output, result).into())
41 } else {
42 println!("cargo:warning=dioxus-tailwind::build::npx_tailwindcss: {} {}", input, output);
43 let stdout = String::from_utf8(result.stdout)?;
44 for line in stdout.lines() {
45 println!("cargo:warning= {:#?}", line);
46 }
47 Ok(())
48 }
49}