diff options
Diffstat (limited to 'server/src/assets.rs')
-rw-r--r-- | server/src/assets.rs | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/server/src/assets.rs b/server/src/assets.rs index 4ddb3a5..cf6ccb1 100644 --- a/server/src/assets.rs +++ b/server/src/assets.rs @@ -3,8 +3,6 @@ which is licensed under the GNU Affero General Public License (version 3); see /COPYING. Copyright (C) 2023 metamuffin <metamuffin.org> */ -use log::error; -use std::sync::LazyLock; #[cfg(debug_assertions)] #[macro_export] @@ -57,70 +55,3 @@ macro_rules! s_asset_dir { }) }}; } - -#[derive(Debug)] -struct GrassFs; -#[cfg(debug_assertions)] -impl GrassFs { - pub fn map(p: &std::path::Path) -> std::path::PathBuf { - std::path::PathBuf::from("../client-web/style").join(p.file_name().unwrap()) - } -} -#[cfg(debug_assertions)] -impl grass::Fs for GrassFs { - fn is_dir(&self, path: &std::path::Path) -> bool { - Self::map(path).is_dir() - } - fn is_file(&self, path: &std::path::Path) -> bool { - Self::map(path).is_file() - } - fn read(&self, path: &std::path::Path) -> std::io::Result<Vec<u8>> { - std::fs::read(Self::map(path)) - } -} - -#[cfg(not(debug_assertions))] -const STYLE_DIR: include_dir::Dir = - include_dir::include_dir!("$CARGO_MANIFEST_DIR/../client-web/style"); -#[cfg(not(debug_assertions))] -impl grass::Fs for GrassFs { - fn is_dir(&self, _path: &std::path::Path) -> bool { - false - } - fn is_file(&self, path: &std::path::Path) -> bool { - STYLE_DIR.get_file(path.file_name().unwrap()).is_some() - } - fn read(&self, path: &std::path::Path) -> std::io::Result<Vec<u8>> { - Ok(STYLE_DIR - .get_file(path.file_name().unwrap()) - .ok_or(std::io::Error::new( - std::io::ErrorKind::NotFound, - "not found", - ))? - .contents() - .to_vec()) - } -} - -static CSS_BUNDLE: LazyLock<String> = LazyLock::new(css_bundle); - -pub fn css() -> String { - if cfg!(debug_assertions) { - css_bundle() - } else { - CSS_BUNDLE.clone() - } -} -fn css_bundle() -> String { - grass::from_path( - "/master.sass", - &grass::Options::default() - .input_syntax(grass::InputSyntax::Sass) - .load_path("/") - .fs(&GrassFs), - ) - .unwrap_or_else(|err| { - error!("sass compile failed: {err}"); - String::from("/* sass compile failed */") - }) -} |