fix: refresh stale ToolHub settings schema

This commit is contained in:
7015725
2026-05-19 00:45:59 +08:00
parent 3479cb25f2
commit eda34d24b1
3 changed files with 38 additions and 4 deletions

View File

@@ -886,6 +886,40 @@ var ConfigManager = {
if (sStr.indexOf("ENABLE_SNAP_TO_EDGE") < 0 || sStr.indexOf("ENABLE_ANIMATIONS") < 0 || sStr.indexOf("BALL_IDLE_ALPHA") < 0 || sStr.indexOf("PANEL_POS_GRAVITY") < 0 || sStr.indexOf("single_choice") < 0 || sStr.indexOf("ball_shortx_icon") < 0 || sStr.indexOf("ball_color") < 0 || sStr.indexOf("SETTINGS_THEME") < 0 || sStr.indexOf("BALL_BG_COLOR_HEX") < 0 || sStr.indexOf("BALL_ICON_SIZE_DP") < 0 || sStr.indexOf("TOOLAPP_BACK_EDGE_WIDTH_DP") < 0 || sStr.indexOf("TOOLAPP_BACK_COMMIT_DISTANCE_DP") < 0 || sStr.indexOf("TOOLAPP_BACK_PROGRESS_DISTANCE_DP") < 0) { if (sStr.indexOf("ENABLE_SNAP_TO_EDGE") < 0 || sStr.indexOf("ENABLE_ANIMATIONS") < 0 || sStr.indexOf("BALL_IDLE_ALPHA") < 0 || sStr.indexOf("PANEL_POS_GRAVITY") < 0 || sStr.indexOf("single_choice") < 0 || sStr.indexOf("ball_shortx_icon") < 0 || sStr.indexOf("ball_color") < 0 || sStr.indexOf("SETTINGS_THEME") < 0 || sStr.indexOf("BALL_BG_COLOR_HEX") < 0 || sStr.indexOf("BALL_ICON_SIZE_DP") < 0 || sStr.indexOf("TOOLAPP_BACK_EDGE_WIDTH_DP") < 0 || sStr.indexOf("TOOLAPP_BACK_COMMIT_DISTANCE_DP") < 0 || sStr.indexOf("TOOLAPP_BACK_PROGRESS_DISTANCE_DP") < 0) {
needReset = true; needReset = true;
} }
// 旧 schema.json 可能已经含有 key但 UI 文案/范围仍是旧值;关键字段不一致时也强制刷新
var findSchemaItemByKey = function(arr, key) {
if (!arr) return null;
for (var i = 0; i < arr.length; i++) {
var it = arr[i];
if (it && it.key === key) return it;
var child = null;
if (it && it.children) child = findSchemaItemByKey(it.children, key);
if (!child && it && it.items) child = findSchemaItemByKey(it.items, key);
if (child) return child;
}
return null;
};
var schemaItemDiffers = function(key, fields) {
var cur = findSchemaItemByKey(s, key);
var def = findSchemaItemByKey(ConfigManager.defaultSchema, key);
if (!cur || !def) return true;
for (var i = 0; i < fields.length; i++) {
var f = fields[i];
if (typeof def[f] !== "undefined" && String(cur[f]) !== String(def[f])) return true;
}
return false;
};
if (!needReset) {
if (schemaItemDiffers("BALL_ICON_TINT_HEX", ["name", "type"]) ||
schemaItemDiffers("BALL_ICON_SIZE_DP", ["name", "type", "min", "max", "step"]) ||
schemaItemDiffers("BALL_BG_COLOR_HEX", ["name", "type"]) ||
schemaItemDiffers("TOOLAPP_BACK_EDGE_WIDTH_DP", ["name", "type", "min", "max", "step"]) ||
schemaItemDiffers("TOOLAPP_BACK_COMMIT_DISTANCE_DP", ["name", "type", "min", "max", "step"]) ||
schemaItemDiffers("TOOLAPP_BACK_PROGRESS_DISTANCE_DP", ["name", "type", "min", "max", "step"])) {
needReset = true;
}
}
} else { } else {
// # 仅当文件不存在时才标记为需要重置(新建),避免因读取失败导致覆盖 // # 仅当文件不存在时才标记为需要重置(新建),避免因读取失败导致覆盖
try { try {

View File

@@ -2,8 +2,8 @@
"alg": "SHA256withRSA", "alg": "SHA256withRSA",
"files": { "files": {
"th_01_base.js": { "th_01_base.js": {
"sha256": "b1ff842821c7d7c8d40543f74ba54134289d7ff4bb412c439ee0e96756744f95", "sha256": "6066fdd266c85adb6b2ca2168845fb4618f952256fcc3aeb1f133160b505fa15",
"size": 54166 "size": 55958
}, },
"th_02_core.js": { "th_02_core.js": {
"sha256": "15bb9bfbd19a673d442e221b0a00a456ed5f87af2666b9c73b117d6223faeecd", "sha256": "15bb9bfbd19a673d442e221b0a00a456ed5f87af2666b9c73b117d6223faeecd",
@@ -68,5 +68,5 @@
}, },
"keyId": "toolhub-targets-2026-rsa3072", "keyId": "toolhub-targets-2026-rsa3072",
"schema": 2, "schema": 2,
"version": 20260518163640 "version": 20260518164547
} }

View File

@@ -1 +1 @@
alRPatTnVV9xdtK76WLorimRuW2Lx3XXOsFDdOukNr/r518G+GCfm1Q6PA8rDvdfPb32ujMtizTkSogiONUWE8nFMg/JSRQbFYClvJaNx+utHFSeJS0l9gSiGJFHnjNO0AXfw2+5Ya1040g8NxERYDpfhC4evUTjs8+l5mTu2jX9Wf6w1z+MqEHtCpPafCNBjgl9nIRV6fRKBul/WsdtfNJ+KwLEaBUMRfK/P97IkNHWwYk+v49paPcyATon3AgYzJP1jrMfZ9BP0IOaoJLNu2srFfY606VOF4kgDjOyp9GcLhCbH7TIZkQJkeqKFBIL0JGukIaY0aKm2A+ABexsaInti9l+vlwbh++5JnuB4+C+5ZGNqOkNC5zmtxf3fFuBRO9mLZ2esvffN2opH2Jffed3yn+O5pSNccsnfLFZ8bDsL+zmzxGwpnjkYFKU/PI+7Zj5CmJwNCNmCqaHlx4QTzhHhudygwzF31PKAlD10pBKNb0IMo9doupg/DblzpHe KaDfDzHxHnW41gnd+x+uamSg0x1kQYMZKRCLgUMnOwFksc08+vq06eI+ElnZP7vPLXVEoo+avqjh7fxC4z1hIYfRvhWyhcHJ1NCaKjmdRgsORXGOP17YFnzS389Xk3hgPlidJU3VLhDgEUEa1Q2Wt4nQ+7fXZY1Lw4SUBU2Ovk02u9eIOxXPmEJ9lOnnuXS9OfiwOpwS7HKeVQQmPiBb0VPaQYeRBojYVCVgp6kCNedvpsyw1rd25oXPUOaJkvvDc1qKO7P+yGrI8QUe3e4bzFcXT555C6op6RBk5mEVsvlq0dZKZoK63BqCrQHQAoDzAONdJ0zPV+jjpb+P0sqK1ztMlupOJJN21C6EdaibHQ3ZcnV4Tep281z5+9wpiSgx5CbIvT10gjIJ+lJaT8yFQA14IkqoL2nyKccsPoLfBIqA9KrSiaK9COrRbvCMbBUMa0KgVELoBfb3puXBqczRD/wxXfQPmZFVWDucq0sW/sCt5F73JC/gUXcpmuVTFJeH