From 54ac065bd3906007c31c19e6f62d771cc6c14ddd Mon Sep 17 00:00:00 2001 From: Hatter Jiang Date: Sun, 10 Dec 2023 10:35:08 +0800 Subject: [PATCH] feat: v1.4.1, optimize config outputs --- src/config.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/config.rs b/src/config.rs index d81f77c..8c3b508 100644 --- a/src/config.rs +++ b/src/config.rs @@ -91,7 +91,18 @@ impl TinyEncryptConfig { pub fn find_by_kid_or_type(&self, k_filter: &str) -> Vec<&TinyEncryptConfigEnvelop> { self.find_by_kid_or_filter(k_filter, |e| { - k_filter == "ALL" || k_filter == format!("type:{}", &e.r#type.get_name()) + let envelop_type = format!("type:{}", &e.r#type.get_name()); + if k_filter == "ALL" || k_filter == "*" || k_filter == envelop_type { + return true; + } + if k_filter.ends_with('*') { + let new_k_filter = k_filter.chars().collect::>(); + let new_k_filter = new_k_filter.iter().take(new_k_filter.len() - 1).collect::(); + if e.kid.starts_with(&new_k_filter) || envelop_type.starts_with(&new_k_filter) { + return true; + } + } + false }) }