Skip to content

Commit

Permalink
Merge pull request #1 from Weeken/dev
Browse files Browse the repository at this point in the history
chore: upgrade plugin tool
  • Loading branch information
Weeken authored Apr 11, 2024
2 parents e6b85e9 + 625d94b commit 738931e
Show file tree
Hide file tree
Showing 5 changed files with 60 additions and 53 deletions.
2 changes: 1 addition & 1 deletion example/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"@farmfe/core": "^1.0.11",
"@vitejs/plugin-vue": "^5.0.4",
"core-js": "^3.30.1",
"farm-plugin-compression": "^0.0.1",
"farm-plugin-compression": "../",
"vite-plugin-compression2": "^1.0.0"
}
}
8 changes: 2 additions & 6 deletions example/pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 6 additions & 13 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,12 @@
"types": "scripts/index.d.ts",
"type": "module",
"license": "MIT",
"dependencies": {
"@farmfe/utils": "^0.0.1",
"cac": "^6.7.14"
},
"devDependencies": {
"@farmfe/plugin-tools": "latest"
"@farmfe/plugin-tools": "^0.1.0"
},
"napi": {
"name": "farm_plugin_compression",
Expand Down Expand Up @@ -36,16 +40,5 @@
"files": [
"scripts"
],
"homepage": "https://github.com/Weeken/farm-plugin-compression",
"optionalDependencies": {
"farm-plugin-compression-win32-x64-msvc": "0.0.1",
"farm-plugin-compression-darwin-x64": "0.0.1",
"farm-plugin-compression-linux-x64-gnu": "0.0.1",
"farm-plugin-compression-darwin-arm64": "0.0.1",
"farm-plugin-compression-linux-arm64-gnu": "0.0.1",
"farm-plugin-compression-linux-arm64-musl": "0.0.1",
"farm-plugin-compression-linux-x64-musl": "0.0.1",
"farm-plugin-compression-win32-ia32-msvc": "0.0.1",
"farm-plugin-compression-win32-arm64-msvc": "0.0.1"
}
"homepage": "https://github.com/Weeken/farm-plugin-compression"
}
25 changes: 21 additions & 4 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

59 changes: 30 additions & 29 deletions src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#![deny(clippy::all)]

use farmfe_core::{
config::Config,
config::{Config, Mode},
context::CompilationContext,
error::Result,
plugin::{Plugin, PluginFinalizeResourcesHookParams},
Expand Down Expand Up @@ -46,42 +46,43 @@ impl Plugin for FarmPluginCompression {
_param: &mut PluginFinalizeResourcesHookParams,
_context: &Arc<CompilationContext>,
) -> Result<Option<()>> {
let options: Value = serde_json::from_str(&self.compression_option).unwrap_or_default();
if matches!(_context.config.mode, Mode::Production) {
let options: Value = serde_json::from_str(&self.compression_option).unwrap_or_default();

let mut compression = Compression::default();
if let Some(level) = options.get("level") {
let result = level.as_str().unwrap();
// println!("compression: {}", result);
match result {
"default" => compression = Compression::default(),
"none" => compression = Compression::none(),
"fast" => compression = Compression::fast(),
"best" => compression = Compression::best(),
_ => compression = Compression::default(),
let mut compression = Compression::default();
if let Some(level) = options.get("level") {
let result = level.as_str().unwrap();
// println!("compression: {}", result);
match result {
"default" => compression = Compression::default(),
"none" => compression = Compression::none(),
"fast" => compression = Compression::fast(),
"best" => compression = Compression::best(),
_ => compression = Compression::default(),
}
}
}
let resource_map_clone = _param.resources_map.clone();
let resource_map_clone = _param.resources_map.clone();

for (name, resource) in resource_map_clone.iter() {
if resource.resource_type.to_ext() != ResourceType::Custom("gz".to_string()).to_ext() {
// println!("name: {}", name);
if !name.starts_with("FARM_RUNTIME_") {
let file_name = format!("{}.gz", name);
for (name, resource) in resource_map_clone.iter() {
if resource.resource_type.to_ext() != ResourceType::Custom("gz".to_string()).to_ext() {
// println!("name: {}", name);
if !name.starts_with("FARM_RUNTIME_") {
let file_name = format!("{}.gz", name);

let gz_resource = Resource {
name: file_name.clone(),
bytes: generate_compress_data(&resource.bytes, compression),
emitted: false,
resource_type: ResourceType::Custom("gz".to_string()),
origin: resource.origin.clone(),
info: None,
};
let gz_resource = Resource {
name: file_name.clone(),
bytes: generate_compress_data(&resource.bytes, compression),
emitted: false,
resource_type: ResourceType::Custom("gz".to_string()),
origin: resource.origin.clone(),
info: None,
};

insert_resource(_param.resources_map, file_name.clone(), gz_resource);
insert_resource(_param.resources_map, file_name.clone(), gz_resource);
}
}
}
}

Ok(None)
}
}

0 comments on commit 738931e

Please sign in to comment.