mirror of
https://github.com/babalae/bettergi-scripts-list.git
synced 2026-03-31 05:59:51 +08:00
feat(config): 添加高阶过滤配置功能
- 在设置中新增 high_level_filtering 配置项用于高级过滤 - 实现高阶过滤逻辑,支持路径层级过滤功能 - 添加 levelName 属性初始化为 undefined - 修复加载层级判断条件中的运算符间距问题 - 添加 levelNameMap 调试日志输出 - 移除重复的变量声明代码 - 添加待优化注释标记后续改进点
This commit is contained in:
@@ -56,6 +56,12 @@
|
||||
"label": "只加载指定层级<配置模式 加载 生效>",
|
||||
"default": false
|
||||
},
|
||||
{
|
||||
"name": "high_level_filtering",
|
||||
"type": "input-text",
|
||||
"label": "高阶过滤<配置模式 加载 生效>",
|
||||
"default": ""
|
||||
},
|
||||
{
|
||||
"name": "order_rules",
|
||||
"type": "input-text",
|
||||
|
||||
@@ -322,6 +322,7 @@ async function initRefresh(settingsConfig) {
|
||||
label: `${p}选择要执行的${item.level + 1}级路径`,
|
||||
options: []
|
||||
}
|
||||
// todo: 待优化
|
||||
let filter = PATH_JSON_LIST.filter(list_item => list_item.id === item.parentId).find(item => item);
|
||||
if (filter) {
|
||||
// filter.levelName = name || undefined
|
||||
@@ -519,7 +520,8 @@ async function loadUidSettingsMap(uidSettingsMap) {
|
||||
loadingLevel = loadingLevel < 1 ? 2 : loadingLevel
|
||||
}
|
||||
//todo: 高阶层级过滤
|
||||
if (false) {
|
||||
const highLevelFiltering = settings.high_level_filtering || undefined
|
||||
if (highLevelFiltering && highLevelFiltering?.trim() !== "") {
|
||||
/**
|
||||
* 实例:pathing\地方特产\
|
||||
* 地方特产
|
||||
@@ -532,7 +534,6 @@ async function loadUidSettingsMap(uidSettingsMap) {
|
||||
*/
|
||||
let keys = new Set([])
|
||||
|
||||
const highLevelFiltering = settings.high_level_filtering || undefined
|
||||
if (highLevelFiltering) {
|
||||
const set = new Set(highLevelFiltering.split("->"));
|
||||
keys = keys.union(set)
|
||||
@@ -552,7 +553,7 @@ async function loadUidSettingsMap(uidSettingsMap) {
|
||||
levelNameMap.set(item.levelName, item);
|
||||
}
|
||||
});
|
||||
|
||||
log.warn("levelNameMap:{0}", JSON.stringify([...levelNameMap]))
|
||||
//中间一段路径名称
|
||||
const dir_key = Array.from(keys).join("\\")
|
||||
filterSettings = filterSettings.filter(item => {
|
||||
@@ -581,7 +582,7 @@ async function loadUidSettingsMap(uidSettingsMap) {
|
||||
return (loadingLevel === level + 1)
|
||||
}
|
||||
// 检查级别是否小于等于加载层级
|
||||
return (loadingLevel > level-1)
|
||||
return (loadingLevel > level - 1)
|
||||
})
|
||||
templateMatchSettings = [...templateMatchSettings, ...levelSettings]
|
||||
while (templateMatchSettings.length > 0 &&
|
||||
@@ -1903,6 +1904,7 @@ async function readPaths(
|
||||
path: itemPath,
|
||||
level: level + 1,
|
||||
fullPathNames: currentFullPathNames,
|
||||
levelName: undefined,
|
||||
isRoot: false,
|
||||
isFile: true,
|
||||
children: [] // 文件没有子节点
|
||||
@@ -1930,6 +1932,7 @@ async function readPaths(
|
||||
path: itemPath,
|
||||
level: level + 1,
|
||||
fullPathNames: currentFullPathNames,
|
||||
levelName: undefined,
|
||||
isRoot: level === 0,
|
||||
isFile: false,
|
||||
children: childNodes
|
||||
|
||||
@@ -56,6 +56,12 @@
|
||||
"label": "只加载指定层级<配置模式 加载 生效>",
|
||||
"default": false
|
||||
},
|
||||
{
|
||||
"name": "high_level_filtering",
|
||||
"type": "input-text",
|
||||
"label": "高阶过滤<配置模式 加载 生效>",
|
||||
"default": ""
|
||||
},
|
||||
{
|
||||
"name": "order_rules",
|
||||
"type": "input-text",
|
||||
|
||||
Reference in New Issue
Block a user